IKRoot.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _IKROOT_H
00015 #define _IKROOT_H
00016 
00017 #include "IK.h"
00018 
00019 // Forward declaration
00020 class CSLIKJoint;
00021 class CSLIKEffector;
00022 
00023 
00029 class XSIEXPORT CSLIKRoot
00030     : public CSLIK
00031 {
00032 public:
00039     CSLIKRoot(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00040 
00043     virtual ~CSLIKRoot();
00044 
00048     CSLModel* GetEffector();
00049 
00053     CSLModel** GetJointList();
00054 
00058     SI_Int GetJointCount();
00059 
00064     CSLModel* ConnectJoint(CSLModel* in_pNewJoint);
00065 
00070     CSLModel* ConnectEffector(CSLModel* in_pNewEffector);
00071 
00075     virtual SI_Error Synchronize();
00076 
00080     virtual ETemplateType Type();
00081 
00082 
00083 private:
00084     CSIBCArray<CSLModel *> m_Joints;
00085     CSLModel* m_pEffector;
00086 
00087     void *m_pReserved;  // reserved for future extension
00088 };
00089 
00090 #endif