FCDocument/FCDEffectParameterList.h

Go to the documentation of this file.
00001 /*
00002     Copyright (C) 2005-2006 Feeling Software Inc.
00003     MIT License: http://www.opensource.org/licenses/mit-license.php
00004 */
00005 
00011 #ifndef _FCD_EFFECT_PARAMETER_LIST_H_
00012 #define _FCD_EFFECT_PARAMETER_LIST_H_
00013 
00014 class FCDEffectParameter;
00015 
00024 class FCOLLADA_EXPORT FCDEffectParameterList : public vector<FCDEffectParameter*>, public FCDObject
00025 {
00026 private:
00027     DeclareObjectType;
00028     bool ownParameters;
00029 
00030 public:
00038     FCDEffectParameterList(FCDocument* document = NULL, bool ownParameters = false);
00039 
00041     virtual ~FCDEffectParameterList();
00042 
00046     FCDEffectParameter* AddParameter(uint32 type);
00047 
00051     void ReleaseParameter(FCDEffectParameter* parameter);
00052 
00058     FCDEffectParameter* FindReference(const char* reference);
00059     const FCDEffectParameter* FindReference(const char* reference) const; 
00060     inline FCDEffectParameter* FindReference(const string& reference) { return FindReference(reference.c_str()); } 
00061     inline const FCDEffectParameter* FindReference(const string& reference) const { return FindReference(reference.c_str()); } 
00067     FCDEffectParameter* FindSemantic(const char* semantic);
00068     const FCDEffectParameter* FindSemantic(const char* semantic) const; 
00069     inline FCDEffectParameter* FindSemantic(const string& semantic) { return FindReference(semantic.c_str()); } 
00070     inline const FCDEffectParameter* FindSemantic(const string& semantic) const { return FindReference(semantic.c_str()); } 
00078     void FindReference(const char* reference, FCDEffectParameterList& list);
00079     inline void FindReference(const string& reference, FCDEffectParameterList& list) { return FindReference(reference.c_str(), list); } 
00086     void FindSemantic(const char* semantic, FCDEffectParameterList& list);
00087     inline void FindSemantic(const string& semantic, FCDEffectParameterList& list) { return FindReference(semantic.c_str(), list); } 
00091     FCDEffectParameterList* Clone() const;
00092 };
00093 
00094 #endif // _FCD_EFFECT_PARAMETER_LIST_H_

Generated on Fri May 12 16:44:38 2006 for FCollada by  doxygen 1.4.6-NO