_SlotFactory

Structure encapsulating slot factory data.

Synopsis:

struct _SlotFactory SlotFactory {
    asr_slot_entry_t * entries ;
    size_t buffer_size ;
    unsigned int page_size ;
    unsigned int max_entries ;
    unsigned int num_entries ;
    SlotFactory_EntryList terminals ;
};

Data:

asr_slot_entry_t * entries
A buffer containing an array of transcription slot entries.
size_t buffer_size
The size of the buffer.
unsigned int page_size
The page size.

Optional. Specified at initialization.

unsigned int max_entries
The maximum number of slot entries in the buffer.
unsigned int num_entries
The current number of slot entries in the buffer.
SlotFactory_EntryList terminals
An ordered list of slot entry objects.

Library:

libasr

Description:

The slot factory manages an array of ASR slot structures that can be passed to the various ASR context-manipulation functions.

The buffer slot structure is allocated in pages to optimize memory use without frequently reallocating the buffer. The size of a single page of slot entries can be set when the slot factory is initialized. The default page size is 4 KB, which is large enough to hold 168 asr_slot_entry_t instances. If a page size is specified when the slot factory is initialized, it is adjusted to the next largest 32-bit aligned buffer size.