24 #ifndef __IDynamicEventTimingMgr__ 25 #define __IDynamicEventTimingMgr__ 27 #include "DynamicDocumentsID.h" 28 #include "IPMUnknown.h" 29 #include "AnimationTypes.h" 31 #include "ScriptData.h" 72 enum {kDefaultIID = IID_IDYNAMICEVENTTIMINGMGR};
94 friend class DynamicTargetImpl;
98 virtual void AddRef()
const = 0;
99 virtual void Release()
const = 0;
112 virtual uint32
GetRole ()
const = 0;
131 virtual void SetAction (uint32 targetAction) = 0;
146 virtual bool HasData (std::vector<uint32>* pDataIDList = nil)
const = 0;
180 typedef boost::intrusive_ptr<DynamicTarget> DynamicTargetPtr;
181 typedef std::vector<DynamicTargetPtr> DynamicTargetList;
183 enum {kInvalidTimingPosition = 0xffffffff};
191 virtual DynamicTargetPtr
CreateDynamicTarget (
UID targetUID, uint32 role = kTimingTargetRoleDefault, uint32 action = kTimingTargetVerbPlay) = 0;
203 virtual int32
FindDynamicTarget (
const DynamicTargetList& targetlist, DynamicTargetPtr& target)
const = 0;
210 virtual int32
FindDynamicTarget (
const DynamicTargetList& targetList,
UID targetUID, DynamicTargetPtr& target)
const = 0;
224 virtual bool AddDynamicEvent (
const EventTriggerType& newEventTrigger) = 0;
247 virtual bool RemoveNthGroup (
const EventTriggerType& whichTrigger, uint32 which) = 0;
256 virtual bool MoveNthGroup (
const EventTriggerType& whichTrigger, uint32 which, int32 newPosition) = 0;
265 virtual bool GetNthGroupNumPlays (
const EventTriggerType& whichTrigger, uint32 which, uint32& numPlays)
const = 0;
274 virtual bool SetNthGroupNumPlays (
const EventTriggerType& whichTrigger, uint32 which, uint32 newNumPlays) = 0;
283 virtual bool GetNthGroupPlaysLoop (
const EventTriggerType& whichTrigger, uint32 which,
bool& playsLoop)
const = 0;
292 virtual bool SetNthGroupPlaysLoop (
const EventTriggerType& whichTrigger, uint32 which,
bool playsLoop) = 0;
296 virtual uint32
GetNumGroups (
const EventTriggerType& whichTrigger)
const = 0;
304 virtual bool GetNthGroupItems (
const EventTriggerType& whichTrigger, uint32 whichGroup, DynamicTargetList& itemList)
const = 0;
314 virtual bool AddTargetInNthGroup (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, int32 atGroup = -1) = 0;
325 virtual int32
FindTargetInEvent (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, DynamicTargetList& itemList, uint32* pItemPosition = nil)
const = 0;
334 virtual bool RemoveTargetInNthGroup (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, uint32 which) = 0;
344 virtual bool ReplaceTargetInNthGroup (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItemToReplace,
const DynamicTargetPtr& newTargetItem, uint32 which) = 0;
354 virtual bool ReplaceNthTargetInNthGroup (
const EventTriggerType& whichTrigger, uint32 which, uint32 whichTarget,
const DynamicTargetPtr& newTargetItem) = 0;
361 virtual bool RemoveTargetInEvent (
const EventTriggerType& trigger,
const DynamicTargetPtr& targetItem) = 0;
380 virtual bool MoveTargetBeforeNthGroup (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, uint32 oldGroup, uint32 beforeGroup) = 0;
390 virtual bool MoveTargetAfterNthGroup (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, uint32 oldPosition, uint32 afterGroup) = 0;
402 virtual bool MoveTargetIntoNthGroupAt (
const EventTriggerType& whichTrigger,
const DynamicTargetPtr& targetItem, uint32 oldGroup, uint32 atGroup, int32 atPosition = -1) = 0;
414 virtual bool MoveNthTargetIntoNthGroupAt (
const EventTriggerType& whichTrigger, uint32 oldGroup, uint32 whichTarget, uint32 atGroup, int32 atPosition = -1) = 0;
423 virtual bool SetTargetDelayInNthGroup (
const EventTriggerType& trigger,
const DynamicTargetPtr& targetItem, uint32 whichGroup,
const PMReal& delay) = 0;
441 virtual bool GetTargetDelayInNthGroup (
const EventTriggerType& trigger,
const DynamicTargetPtr& targetItem, uint32 whichGroup,
PMReal& delay)
const = 0;
449 virtual bool SetTargetDataInNthGroup (
const EventTriggerType& trigger,
const DynamicTargetPtr& targetItem, uint32 whichGroup) = 0;
458 virtual bool SetNthTargetDataInNthGroup (
const EventTriggerType& trigger, uint32 whichGroup, uint32 whichTarget,
const DynamicTargetPtr& newTargetData) = 0;
466 virtual IDynamicEventTimingMgr::DynamicTargetPtr
GetTargetDataInNthGroup (
const EventTriggerType& trigger,
const DynamicTargetPtr& targetItem, uint32 whichGroup)
const = 0;
474 virtual IDynamicEventTimingMgr::DynamicTargetPtr
GetNthTargetDataInNthGroup (
const EventTriggerType& trigger, uint32 whichGroup, uint32 whichTarget)
const = 0;
486 virtual EventTriggerType
ValidateTriggerType (
const EventTriggerType& whichTrigger)
const = 0;
489 #endif // __IDynamicEventTimingMgr__