ActionClipContainer.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _ACTIONCLIPCONTAINER_H
00015 #define _ACTIONCLIPCONTAINER_H
00016 
00017 #include "Template.h"
00018 #include "ActionClip.h"
00019 
00020 // Forward declaration
00021 
00022 class CSLAction;
00023 class CSLTrack;
00024 
00038 class XSIEXPORT CSLActionClipContainer
00039     : public CSLActionClip
00040 {
00041 public:
00047     CSLActionClipContainer(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00048     virtual ~CSLActionClipContainer();
00049 
00053     virtual SI_Error Synchronize();
00054 
00058     CSLTemplate::ETemplateType Type(){ return CSLTemplate::XSI_ACTIONCLIPCONTAINER; }
00059 
00060     // Tracks functionality //////////////////////////////////////////////////
00061 
00067     SI_Error RemoveTrack( SI_Int in_nIndex );
00068 
00074     SI_Error RemoveTrack( CSLTrack *io_pToRemove );
00075 
00079     CSLTrack** GetTrackList();
00080 
00084     SI_Int GetTrackCount();
00085 
00089     CSLTrack* AddTrack();
00090 
00094     SI_Error ClearTracks();
00095 
00100     CSLTrack* ConnectTrack(CSLTrack* in_pNewTrack);
00101 
00102 private:
00103     CSIBCArray<CSLTrack *> m_Tracks;
00104 
00105     SI_Void *m_pReserved;
00106 };
00107 
00108 #endif // _ACTIONCLIPCONTAINER_H