18#ifndef AGXDATA_FILE_TRACK_H
19#define AGXDATA_FILE_TRACK_H
77 void setEnableUseAio(
bool useAio );
78 bool getEnableUseAio()
const;
91 virtual Frame* readFrame(
agx::UInt frameIndex)
override;
92 using DiskFrameReader::readFrame;
99 void removeUnwantedBuffers( agx::TiXmlElement* eElement,
const agxData::Frame::DataBindingRefVector& bindings,
const agx::String& path );
107 PreloadedFrameRef m_preloadedFrame;
112 std::ifstream m_journalFile;
114 bool m_activeMergeSequence;
148 bool hasQueuedRead()
const;
157 bool waitForCurrentReadToComplete();
159 virtual ~PreloadedFrame();
161 struct aiocb m_aioHandle;
163 size_t m_frameDataSize;
164 size_t m_alignmentRequirement;
182 virtual void writeFrame(
const agxData::Frame* frame)
override;
183 virtual const JournalArchive::Session*
getSession()
const override;
#define AGX_DECLARE_POINTER_TYPES(type)
Helper class for the FrameReaders that are backed by a file on disk.
Base class for the FrameReaders that are backed by a file on disk.
Frame reader that supports the files-and-foldes prototype format.
FileFrameReader(agxData::JournalArchive::Session *session)
agx::UInt getFrameOffset() const
virtual bool jumpToTime(agx::Real time) override
virtual bool jumpToFrame(agx::UInt frameIndex) override
Select which frame that should be returned by the next call to 'readFrame'.
virtual const agxData::JournalArchive::Session * getSession() const override
BinaryReadStrategy getBinaryReadStrategy() const
virtual ~FileFrameReader()
virtual void prepareSequence(agx::UInt startFrame, agx::UInt lastFrame) override
void setBinaryReadStrategy(BinaryReadStrategy strategy)
virtual void endSequence() override
BinaryReadStrategy
Controls how the binary data of a frame is read from disk.
virtual void writeFrame(const agxData::Frame *frame) override
FileFrameWriter(agxData::JournalArchive::Session *session)
NOTE: Buffer compression is default disabled due to decompression being slow for large datasets,...
virtual const JournalArchive::Session * getSession() const override
virtual void endOfStream() override
virtual ~FileFrameWriter()
Session(const agx::Name &name)
Base class providing referencing counted objects.
Contains classes for low level data storage for AGX.
The agx namespace contains the dynamics/math part of the AGX Dynamics API.