00001 00009 #pragma once 00010 00011 #include "ManagedObject.h" 00012 #include "WDError.h" 00013 00014 class ActorGroup; 00015 class Image; 00016 00023 class Actor: public ManagedObject 00024 { 00025 private: 00026 Image *mBaseImage; 00028 protected: 00032 WDError updateBaseImageID(); 00033 00034 public: 00035 Actor(); 00036 00042 WDError initRef(void *inNode, IObjectManager *inManager, IObjectEventHandler *inEventHandler); 00043 00049 WDError initRef(ActorGroup *inParent, int inIndex, IObjectEventHandler *inEventHandler); 00050 00056 WDError initNew(ActorGroup *inParent, Image *inBaseImage, IObjectEventHandler *inEventHandler); 00057 00062 WDError setBaseImage(void *inBaseImage, IObjectManager *inObjectManager); 00063 00067 WDError getBaseImage(void **outBaseImage); 00068 00072 WDError getEnergy(float *outEnergy); 00073 00077 WDError setEnergy(float inEnergy); 00078 00079 00080 // IObjectEventHandler Interface // 00081 00082 void childChanged(IManagedObject *inTarget, void *inChild); 00083 };