FCDocument/FCDEffectCode.h

Go to the documentation of this file.
00001 /*
00002     Copyright (C) 2005-2007 Feeling Software Inc.
00003     Portions of the code are:
00004     Copyright (C) 2005-2007 Sony Computer Entertainment America
00005     
00006     MIT License: http://www.opensource.org/licenses/mit-license.php
00007 */
00008 
00014 #ifndef _FCD_EFFECT_CODE_H_
00015 #define _FCD_EFFECT_CODE_H_
00016 
00017 #ifndef __FCD_OBJECT_H_
00018 #include "FCDocument/FCDObject.h"
00019 #endif // __FCD_OBJECT_H_
00020 
00021 class FCDocument;
00022 
00036 class FCOLLADA_EXPORT FCDEffectCode : public FCDObject
00037 {
00038 public:
00040     enum Type
00041     {
00042         INCLUDE, 
00043         CODE 
00044     };
00045 
00046 private:
00047     DeclareObjectType(FCDObject);
00048 
00049     Type type;
00050     fm::string sid;
00051     fstring code;
00052     fstring filename;
00053 
00054 public:
00059     FCDEffectCode(FCDocument* document);
00060 
00062     virtual ~FCDEffectCode();
00063 
00066     inline Type GetType() const { return type; }
00067 
00072     inline void SetType(Type _type) { type = _type; SetDirtyFlag(); }
00073 
00077     inline const fm::string& GetSubId() const { return sid; }
00078 
00082     void SetSubId(const fm::string& _sid);
00083 
00088     inline const fstring& GetCode() const { return code; }
00089 
00093     inline void SetCode(const fstring& _code) { code = _code; type = CODE; SetDirtyFlag(); }
00094 
00099     inline const fstring& GetFilename() const { return filename; }
00100 
00104     void SetFilename(const fstring& _filename);
00105 
00111     FCDEffectCode* Clone(FCDEffectCode* clone = NULL) const;
00112 };
00113 
00114 #endif // _FCD_EFFECT_CODE_H_

Generated on Thu Feb 14 16:58:33 2008 for FCollada by  doxygen 1.4.6-NO