xsi_chainroot.h Source File
 
 
 
xsi_chainroot.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSICHAINROOT_H__
00018 #define __XSICHAINROOT_H__
00019 
00020 #include <xsi_chainelement.h>
00021 #include <xsi_status.h>
00022 #include <xsi_vector3.h>
00023 
00024 namespace XSI {
00025 
00026 class ChainBone;
00027 
00028 //*****************************************************************************
00056 //*****************************************************************************
00057 
00058 class SICPPSDKDECL ChainRoot : public ChainElement
00059 {
00060 public:
00062         ChainRoot();
00063 
00065         ~ChainRoot();
00066 
00070         ChainRoot(const CRef& in_ref);
00071 
00075         ChainRoot(const ChainRoot& in_obj);
00076 
00081         bool IsA( siClassID in_ClassID) const;
00082 
00086         siClassID GetClassID() const;
00087 
00093         ChainRoot& operator=(const ChainRoot& in_obj);
00094 
00100         ChainRoot& operator=(const CRef& in_ref);
00101 
00105         CRefArray GetBones() const;
00106 
00116         CStatus AddBone
00117         (
00118                 const MATH::CVector3&   in_newEffPos,
00119                 siChainBoneType                 in_BoneType,
00120                 const CString&                  in_name,
00121                 ChainBone&                              io_bone
00122         );
00123 
00124         private:
00125         ChainRoot * operator&() const;
00126         ChainRoot * operator&();
00127 };
00128 
00129 };
00130 
00131 #endif // __XSICHAINROOT_H__