fbxsdk/scene/fbxcollection.h Source File
 
 
 
fbxsdk/scene/fbxcollection.h
Go to the documentation of this file.
00001 /****************************************************************************************
00002  
00003    Copyright (C) 2013 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_COLLECTION_H_
00014 #define _FBXSDK_SCENE_COLLECTION_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/fbxobject.h>
00019 
00020 #include <fbxsdk/fbxsdk_nsbegin.h>
00021 
00022 class FbxCriteria;
00023 
00028 class FBXSDK_DLL FbxCollection : public FbxObject
00029 {
00030     FBXSDK_OBJECT_DECLARE(FbxCollection, FbxObject);
00031 
00032 public:
00037 
00038         virtual void Clear();
00039 
00043         virtual bool AddMember(FbxObject* pMember) { return ConnectSrcObject(pMember); }
00044 
00048         virtual bool RemoveMember(FbxObject* pMember) { return DisconnectSrcObject(pMember); }
00049 
00053         inline int GetMemberCount () const { return GetSrcObjectCount(); }
00054 
00059         inline FbxObject* GetMember(int pIndex=0) const { return GetSrcObject(pIndex); }
00060 
00065         virtual bool IsMember(const FbxObject* pMember) const;
00067 
00075         template <class T> FBX_DEPRECATED inline int GetMemberCount(const T*) const { return GetSrcObjectCount<T>(); }
00076 
00079                 template <class T> inline int GetMemberCount() const { return GetSrcObjectCount<T>(); }
00080 
00085         template <class T> FBX_DEPRECATED inline T* GetMember(const T*, int pIndex=0) const { return GetSrcObject<T>(pIndex); }
00086 
00090                 template <class T> inline T* GetMember(int pIndex=0) const { return GetSrcObject<T>(pIndex); }
00091 
00095                 template <class T> FBX_DEPRECATED inline T* FindMember(const T*, const char* pName) const { return FindSrcObject<T>(pName); }
00096 
00099                 template <class T> inline T* FindMember(const char* pName) const { return FindSrcObject<T>(pName); }
00101 
00109         inline int GetMemberCount(const FbxCriteria& pCriteria) const { return GetSrcObjectCount(pCriteria); }
00110 
00115         inline FbxObject* GetMember(const FbxCriteria& pCriteria, int pIndex=0) const { return GetSrcObject(pCriteria, pIndex); }
00116 
00120                 inline FbxObject* FindMember(const FbxCriteria& pCriteria, const char* pName) const { return FindSrcObject(pCriteria, pName); }
00122 
00130         virtual void SetSelectedAll(bool pSelection);
00131 
00136         virtual void SetSelected(FbxObject* pObject, bool pSelection);
00137 
00142         virtual bool GetSelected(FbxObject* pObject);
00144 };
00145 
00146 #include <fbxsdk/fbxsdk_nsend.h>
00147 
00148 #endif /* _FBXSDK_SCENE_COLLECTION_H_ */