mxOmfEventAndSourceInfo_t is the central edit data exchange interface
to support mechanisms for transferring edit data between MaxOmfSdk
and your client application.
It collects several important edit data structures together :
mxOmfTrackInfo_t
mxOmfEventInfo_t
mxOmfMasterInfo_t
mxOmfFileInfo_t
mxOmfTapeInfo_t
These typically contain related, or associated, edit data components values.
For example, when mxOmfGetNextTrackInfo() and
mxOmfGetNextEventAndSourceInfo() have been called, as illustrated
by CMaxOmfSdkDemoOmfDoc::GetMxOmfInfo(), they will contain :
mxOmfTrackInfo_t - current Track of composition
mxOmfEventInfo_t - current Event of Track
mxOmfMasterInfo_t - current Master used by Event
mxOmfFileInfo_t - current File of Master used by Event
mxOmfTapeInfo_t - current Tape used by Event and Master
In the case of the client app populating them for input to MaxOmfSdk
it is the client apps responsibility to create a similar component
association,
as illustrated by CMaxOmfSdkDemoOmfDoc::PopulateOmfInfoFromProxyClientData()
The following functions are used with mxOmfEventAndSourceInfo_t :
Get edit data from SDK
----------------------
Iterating Tracks, Events, and Sources from composition
mxOmfGetNextTrackInfo() - Iterate next track only, from composition tracks
mxOmfGetNextEventAndSourceInfo() - Iterate event and source, from current
track
Extracting specific components
mxOmfGetNextFileOfMaster() - Iterate the Files attached to Master
mxOmfGetTapeOfCurrentMaster() - Get Tape attached to Master
mxOmfGetFileInfoByMasterChannel() - Get File on a channel of a Master
Iterating components from global lists
mxOmfGetNextSourceClipInfo() - Iterate all Source Clips (Master, File,
and Tape), from global Master list
mxOmfGetNextTapeInfo() - Iterate all Tapes, from global Tape list
mxOmfGetNextFileInfo() - Iterate all Files, from global File list
mxOmfGetNextMasterInfo() - Iterate all Masters, from global Master list
See CMaxOmfSdkDemoOmfDoc::GetMxOmfInfo() for example usage
Input edit data to SDK
----------------------
mxOmfEventAppendOnChan() -
mxOmfMasterAppendUnique() - Create a unique Master
mxOmfFileAppendByChannelUnique() - Create unique File and attach it
to Master on designated channel
mxOmfTapeAppendUnique() - Create a unique (by UID) Tape
mxOmfTapeAppendUniqueByTapeName() - Create a unique (by tape name) Tape
mxOmfCompleteOmfInput() - Call after all input data completed
See CMaxOmfSdkDemoOmfDoc::PopulateOmfInfoFromProxyClientData()
for example usage
Clear (set defaults)
--------------------
mxOmfClearTrackEventAndSourceInfo() - clear all components
mxOmfClearEventAndSourceInfo() - clear all except Track
mxOmfClearTrackInfo() - clear Track only
mxOmfClearEventInfo() - clear Event only
mxOmfClearMasterInfo() - clear Master only
mxOmfClearFileInfo() - clear File only
mxOmfClearTapeInfo() = clear Tape only
typedef struct tagMxOmfEventAndSourceInfo_t
{
mxOmfTrackInfo_t curMxTrackInfo;
mxOmfEventInfo_t curMxEventInfo;
mxOmfMasterInfo_t curMxMasterInfo;
mxOmfFileInfo_t curMxFileInfo;
mxOmfTapeInfo_t curMxTapeInfo;
} mxOmfEventAndSourceInfo_t;