Keeps every entry in RAM (a plain Vector<T>) - the simplest and fastest option, but scales with the track's total sample/chunk count (e.g. ~4.5MB total for a 102-minute movie's stsz+stco tables). Default if no other SampleTableStore is configured.
More...
#include <SampleTableStore.h>
|
| void | append (T value) override |
| | Appends one entry - call in file order, once per table entry.
|
| |
| void | clear () override |
| | Resets to empty - call once per begin()/track.
|
| |
| T | get (size_t index) override |
| | Reads back entry 'index' - index must be < size().
|
| |
| virtual void | setNextEntryOffset (uint64_t fileOffset) |
| |
| virtual void | setOnDiskEntrySize (size_t bytes) |
| |
| size_t | size () override |
| | Number of entries appended so far.
|
| |
template<typename T>
class audio_tools::RamSampleTableStore< T >
Keeps every entry in RAM (a plain Vector<T>) - the simplest and fastest option, but scales with the track's total sample/chunk count (e.g. ~4.5MB total for a 102-minute movie's stsz+stco tables). Default if no other SampleTableStore is configured.
◆ append()
◆ clear()
◆ get()
◆ setNextEntryOffset()
template<typename T >
| virtual void setNextEntryOffset |
( |
uint64_t |
fileOffset | ) |
|
|
inlinevirtualinherited |
Only meaningful for SourceSeekSampleTableStore: the absolute byte offset (from the start of the original MP4 file) of the entry about to be appended next. Default no-op - other implementations ignore it, so callers can always call this unconditionally before append() without needing to know which implementation is active.
Reimplemented in SourceSeekSampleTableStore< T >.
◆ setOnDiskEntrySize()
template<typename T >
| virtual void setOnDiskEntrySize |
( |
size_t |
bytes | ) |
|
|
inlinevirtualinherited |
◆ size()
◆ data
The documentation for this class was generated from the following file: