DYT/Tool/3rdParty_x64/include/1.5/dom/domCg_newparam.h
2024-11-22 23:19:31 +08:00

237 lines
6.7 KiB
C++

#ifndef __dom150Cg_newparam_h__
#define __dom150Cg_newparam_h__
#include <dae/daeDocument.h>
#include <1.5/dom/domTypes.h>
#include <1.5/dom/domElements.h>
#include <1.5/dom/domCg_param.h>
#include <1.5/dom/domFx_annotate.h>
class DAE;
namespace ColladaDOM150 {
/**
* Create a new, named param object in the CG Runtime, assign it a type, an
* initial value, and additional attributes at declaration time.
*/
class domCg_newparam : public daeElement
{
public:
virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::CG_NEWPARAM; }
static daeInt ID() { return 246; }
virtual daeInt typeID() const { return ID(); }
public:
class domSemantic;
typedef daeSmartRef<domSemantic> domSemanticRef;
typedef daeTArray<domSemanticRef> domSemantic_Array;
/**
* The semantic element allows you to specify a semantic for this new param.
*/
class domSemantic : public daeElement
{
public:
virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::SEMANTIC; }
static daeInt ID() { return 247; }
virtual daeInt typeID() const { return ID(); }
public: //Accessors and Mutators
/**
* Gets the value of this element.
* @return Returns a xsNCName of the value.
*/
xsNCName getValue() const { return _value; }
/**
* Sets the _value of this element.
* @param val The new value for this element.
*/
void setValue( xsNCName val ) { *(daeStringRef*)&_value = val; }
protected: // Value
/**
* The xsNCName value of the text data of this element.
*/
xsNCName _value;
protected:
/**
* Constructor
*/
domSemantic(DAE& dae) : daeElement(dae), _value() {}
/**
* Destructor
*/
virtual ~domSemantic() {}
/**
* Overloaded assignment operator
*/
virtual domSemantic &operator=( const domSemantic &cpy ) { (void)cpy; return *this; }
public: // STATIC METHODS
/**
* Creates an instance of this class and returns a daeElementRef referencing it.
* @return a daeElementRef referencing an instance of this object.
*/
static DLLSPEC daeElementRef create(DAE& dae);
/**
* Creates a daeMetaElement object that describes this element in the meta object reflection framework.
* If a daeMetaElement already exists it will return that instead of creating a new one.
* @return A daeMetaElement describing this COLLADA element.
*/
static DLLSPEC daeMetaElement* registerElement(DAE& dae);
};
class domModifier;
typedef daeSmartRef<domModifier> domModifierRef;
typedef daeTArray<domModifierRef> domModifier_Array;
/**
* The modifier element allows you to specify a modifier for this new param.
*/
class domModifier : public daeElement
{
public:
virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::MODIFIER; }
static daeInt ID() { return 248; }
virtual daeInt typeID() const { return ID(); }
public: //Accessors and Mutators
/**
* Gets the value of this element.
* @return a domFx_modifier of the value.
*/
domFx_modifier& getValue() { return _value; }
/**
* Sets the _value of this element.
* @param val The new value for this element.
*/
void setValue( const domFx_modifier& val ) { _value = val; }
protected: // Value
/**
* The domFx_modifier value of the text data of this element.
*/
domFx_modifier _value;
protected:
/**
* Constructor
*/
domModifier(DAE& dae) : daeElement(dae), _value() {}
/**
* Destructor
*/
virtual ~domModifier() {}
/**
* Overloaded assignment operator
*/
virtual domModifier &operator=( const domModifier &cpy ) { (void)cpy; return *this; }
public: // STATIC METHODS
/**
* Creates an instance of this class and returns a daeElementRef referencing it.
* @return a daeElementRef referencing an instance of this object.
*/
static DLLSPEC daeElementRef create(DAE& dae);
/**
* Creates a daeMetaElement object that describes this element in the meta object reflection framework.
* If a daeMetaElement already exists it will return that instead of creating a new one.
* @return A daeMetaElement describing this COLLADA element.
*/
static DLLSPEC daeMetaElement* registerElement(DAE& dae);
};
protected: // Attribute
domSid attrSid;
protected: // Elements
/**
* The annotate element allows you to specify an annotation for this new param.
* @see domAnnotate
*/
domFx_annotate_Array elemAnnotate_array;
/**
* The semantic element allows you to specify a semantic for this new param.
* @see domSemantic
*/
domSemanticRef elemSemantic;
/**
* The modifier element allows you to specify a modifier for this new param.
* @see domModifier
*/
domModifierRef elemModifier;
domCg_paramRef elemCg_param;
public: //Accessors and Mutators
/**
* Gets the sid attribute.
* @return Returns a domSid of the sid attribute.
*/
domSid getSid() const { return attrSid; }
/**
* Sets the sid attribute.
* @param atSid The new value for the sid attribute.
*/
void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;}
/**
* Gets the annotate element array.
* @return Returns a reference to the array of annotate elements.
*/
domFx_annotate_Array &getAnnotate_array() { return elemAnnotate_array; }
/**
* Gets the annotate element array.
* @return Returns a constant reference to the array of annotate elements.
*/
const domFx_annotate_Array &getAnnotate_array() const { return elemAnnotate_array; }
/**
* Gets the semantic element.
* @return a daeSmartRef to the semantic element.
*/
const domSemanticRef getSemantic() const { return elemSemantic; }
/**
* Gets the modifier element.
* @return a daeSmartRef to the modifier element.
*/
const domModifierRef getModifier() const { return elemModifier; }
/**
* Gets the cg_param element.
* @return a daeSmartRef to the cg_param element.
*/
const domCg_paramRef getCg_param() const { return elemCg_param; }
protected:
/**
* Constructor
*/
domCg_newparam(DAE& dae) : daeElement(dae), attrSid(), elemAnnotate_array(), elemSemantic(), elemModifier(), elemCg_param() {}
/**
* Destructor
*/
virtual ~domCg_newparam() {}
/**
* Overloaded assignment operator
*/
virtual domCg_newparam &operator=( const domCg_newparam &cpy ) { (void)cpy; return *this; }
public: // STATIC METHODS
/**
* Creates an instance of this class and returns a daeElementRef referencing it.
* @return a daeElementRef referencing an instance of this object.
*/
static DLLSPEC daeElementRef create(DAE& dae);
/**
* Creates a daeMetaElement object that describes this element in the meta object reflection framework.
* If a daeMetaElement already exists it will return that instead of creating a new one.
* @return A daeMetaElement describing this COLLADA element.
*/
static DLLSPEC daeMetaElement* registerElement(DAE& dae);
};
} // ColladaDOM150
#endif