00001 /**************************************************************************************** 00002 00003 Copyright (C) 2012 Autodesk, Inc. 00004 All rights reserved. 00005 00006 Use of this software is subject to the terms of the Autodesk license agreement 00007 provided at the time of installation or download, or which otherwise accompanies 00008 this software in either electronic or hard copy form. 00009 00010 ****************************************************************************************/ 00011 00013 #ifndef _FBXSDK_SCENE_SELECTION_NODE_H_ 00014 #define _FBXSDK_SCENE_SELECTION_NODE_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/fbxobject.h> 00019 #include <fbxsdk/core/fbxmanager.h> 00020 00021 #include <fbxsdk/fbxsdk_nsbegin.h> 00022 00028 class FBXSDK_DLL FbxSelectionNode : public FbxObject 00029 { 00030 FBXSDK_OBJECT_DECLARE(FbxSelectionNode, FbxObject); 00031 00032 public: 00040 enum ESelectType 00041 { 00042 eVertexLevel, 00043 eEdgeLevel, 00044 eFaceLevel, 00045 eObjectLevel, 00046 eSelectTypeCount 00047 }; 00048 00054 bool SetSelectionObject(FbxObject* pObject); 00055 00059 FbxObject* GetSelectionObject() const; 00060 00066 bool IsValid() const; 00067 00071 bool mIsTheNodeInSet; 00072 00075 FbxArray<int> mVertexIndexArray; 00076 00079 FbxArray<int> mEdgeIndexArray; 00080 00083 FbxArray<int> mPolygonIndexArray; 00084 00086 // 00087 // WARNING! 00088 // 00089 // Anything beyond these lines may not be documented accurately and is 00090 // subject to change without notice. 00091 // 00093 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00094 00095 FbxArray<FbxArray<int>*> mSubTypeSelectArray; 00096 static const char* SELECT_TYPE_NAMES[(int)eSelectTypeCount]; 00097 00098 protected: 00099 FbxSelectionNode(FbxManager& pManager, char const* pName); 00100 bool ConnecNotify (FbxConnectEvent const &pEvent); 00101 00102 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS 00103 }; 00104 00105 #include <fbxsdk/fbxsdk_nsend.h> 00106 00107 #endif /* _FBXSDK_SCENE_SELECTION_NODE_H_ */