00001
00002
00003
00004
00005
00006 #ifndef _FCD_PHYSICS_PARAMETER_GENERIC_H_
00007 #define _FCD_PHYSICS_PARAMETER_GENERIC_H_
00008
00009 #include "FCDocument/FCDObject.h"
00010
00011 class FCDocument;
00012
00013 class FCOLLADA_EXPORT FCDPhysicsParameterGeneric: public FCDObject
00014 {
00015 private:
00016 DeclareObjectType;
00017
00018 public:
00019 FCDPhysicsParameterGeneric(FCDocument* document, const string& ref);
00020 virtual ~FCDPhysicsParameterGeneric();
00021
00022 virtual FCDPhysicsParameterGeneric* Clone()=0;
00023 bool IsGenerator() const { return isGenerator; }
00024 bool IsModifier() const { return !isGenerator; }
00025
00026 const string& GetReference() const {return reference;};
00027 void SetReference(const string& ref) {reference = ref;};
00028 void SetGenerator(bool val) {isGenerator = val;}
00029
00030 virtual void Overwrite(FCDPhysicsParameterGeneric* target) = 0;
00031
00032
00033
00034
00035
00036 virtual xmlNode* WriteToXML(xmlNode* parentNode) const = 0;
00037
00038 protected:
00039 bool isGenerator;
00040 string reference;
00041
00042 };
00043
00044 #endif // _FCD_PHYSICS_PARAMETER_GENERIC_H_