FCDocument/FCDEffectCode.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_CODE_H_
00012 #define _FCD_EFFECT_CODE_H_
00013 
00014 #include "FCDocument/FCDObject.h"
00015 
00016 class FCDocument;
00017 
00031 class FCDEffectCode : public FCDObject
00032 {
00033 public:
00035     enum Type
00036     {
00037         INCLUDE, 
00038         CODE 
00039     };
00040 
00041 private:
00042     DeclareObjectType;
00043 
00044     Type type;
00045     string sid;
00046     fstring code;
00047     fstring filename;
00048 
00049 public:
00054     FCDEffectCode(FCDocument* document);
00055 
00059     ~FCDEffectCode();
00060 
00063     inline Type GetType() const { return type; }
00064 
00069     inline void SetType(Type _type) { type = _type; }
00070 
00074     const string& GetSid() const { return sid; }
00075 
00079     void SetSid(const string& _sid) { sid = _sid; }
00080 
00085     const fstring& GetCode() const { return code; }
00086 
00090     void SetCode(const fstring& _code) { code = _code; type = CODE; }
00091 
00096     const fstring& GetFilename() const { return filename; }
00097 
00101     void SetFilename(const fstring& _filename) { filename = _filename; type = INCLUDE; }
00102 
00105     FCDEffectCode* Clone() const;
00106 
00112     FUStatus LoadFromXML(xmlNode* codeNode);
00113 
00117     xmlNode* WriteToXML(xmlNode* parentNode) const;
00118 };
00119 
00120 #endif // _FCD_EFFECT_CODE_H_

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