00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __domGlsl_param_type_h__
00010 #define __domGlsl_param_type_h__
00011
00012 #include <dae/daeDocument.h>
00013 #include <dom/domTypes.h>
00014 #include <dom/domElements.h>
00015
00016 #include <dom/domGlsl_surface_type.h>
00017 #include <dom/domGl_sampler1D.h>
00018 #include <dom/domGl_sampler2D.h>
00019 #include <dom/domGl_sampler3D.h>
00020 #include <dom/domGl_samplerCUBE.h>
00021 #include <dom/domGl_samplerRECT.h>
00022 #include <dom/domGl_samplerDEPTH.h>
00023 class DAE;
00024
00028 class domGlsl_param_type : public daeElement
00029 {
00030 public:
00031 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::GLSL_PARAM_TYPE; }
00032 static daeInt ID() { return 363; }
00033 virtual daeInt typeID() const { return ID(); }
00034 public:
00035 class domBool;
00036
00037 typedef daeSmartRef<domBool> domBoolRef;
00038 typedef daeTArray<domBoolRef> domBool_Array;
00039
00040 class domBool : public daeElement
00041 {
00042 public:
00043 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOOL; }
00044 static daeInt ID() { return 364; }
00045 virtual daeInt typeID() const { return ID(); }
00046
00047 protected:
00051 domGlsl_bool _value;
00052
00053 public:
00058 domGlsl_bool getValue() const { return _value; }
00063 void setValue( domGlsl_bool val ) { _value = val; }
00064
00065 protected:
00069 domBool(DAE& dae) : daeElement(dae), _value() {}
00073 virtual ~domBool() {}
00077 virtual domBool &operator=( const domBool &cpy ) { (void)cpy; return *this; }
00078
00079 public:
00084 static DLLSPEC daeElementRef create(DAE& dae);
00090 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00091 };
00092
00093 class domBool2;
00094
00095 typedef daeSmartRef<domBool2> domBool2Ref;
00096 typedef daeTArray<domBool2Ref> domBool2_Array;
00097
00098 class domBool2 : public daeElement
00099 {
00100 public:
00101 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOOL2; }
00102 static daeInt ID() { return 365; }
00103 virtual daeInt typeID() const { return ID(); }
00104
00105 protected:
00109 domGlsl_bool2 _value;
00110
00111 public:
00116 domGlsl_bool2 &getValue() { return _value; }
00121 const domGlsl_bool2 &getValue() const { return _value; }
00126 void setValue( const domGlsl_bool2 &val ) { _value = val; }
00127
00128 protected:
00132 domBool2(DAE& dae) : daeElement(dae), _value() {}
00136 virtual ~domBool2() {}
00140 virtual domBool2 &operator=( const domBool2 &cpy ) { (void)cpy; return *this; }
00141
00142 public:
00147 static DLLSPEC daeElementRef create(DAE& dae);
00153 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00154 };
00155
00156 class domBool3;
00157
00158 typedef daeSmartRef<domBool3> domBool3Ref;
00159 typedef daeTArray<domBool3Ref> domBool3_Array;
00160
00161 class domBool3 : public daeElement
00162 {
00163 public:
00164 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOOL3; }
00165 static daeInt ID() { return 366; }
00166 virtual daeInt typeID() const { return ID(); }
00167
00168 protected:
00172 domGlsl_bool3 _value;
00173
00174 public:
00179 domGlsl_bool3 &getValue() { return _value; }
00184 const domGlsl_bool3 &getValue() const { return _value; }
00189 void setValue( const domGlsl_bool3 &val ) { _value = val; }
00190
00191 protected:
00195 domBool3(DAE& dae) : daeElement(dae), _value() {}
00199 virtual ~domBool3() {}
00203 virtual domBool3 &operator=( const domBool3 &cpy ) { (void)cpy; return *this; }
00204
00205 public:
00210 static DLLSPEC daeElementRef create(DAE& dae);
00216 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00217 };
00218
00219 class domBool4;
00220
00221 typedef daeSmartRef<domBool4> domBool4Ref;
00222 typedef daeTArray<domBool4Ref> domBool4_Array;
00223
00224 class domBool4 : public daeElement
00225 {
00226 public:
00227 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::BOOL4; }
00228 static daeInt ID() { return 367; }
00229 virtual daeInt typeID() const { return ID(); }
00230
00231 protected:
00235 domGlsl_bool4 _value;
00236
00237 public:
00242 domGlsl_bool4 &getValue() { return _value; }
00247 const domGlsl_bool4 &getValue() const { return _value; }
00252 void setValue( const domGlsl_bool4 &val ) { _value = val; }
00253
00254 protected:
00258 domBool4(DAE& dae) : daeElement(dae), _value() {}
00262 virtual ~domBool4() {}
00266 virtual domBool4 &operator=( const domBool4 &cpy ) { (void)cpy; return *this; }
00267
00268 public:
00273 static DLLSPEC daeElementRef create(DAE& dae);
00279 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00280 };
00281
00282 class domFloat;
00283
00284 typedef daeSmartRef<domFloat> domFloatRef;
00285 typedef daeTArray<domFloatRef> domFloat_Array;
00286
00287 class domFloat : public daeElement
00288 {
00289 public:
00290 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT; }
00291 static daeInt ID() { return 368; }
00292 virtual daeInt typeID() const { return ID(); }
00293
00294 protected:
00298 domGlsl_float _value;
00299
00300 public:
00305 domGlsl_float getValue() const { return _value; }
00310 void setValue( domGlsl_float val ) { _value = val; }
00311
00312 protected:
00316 domFloat(DAE& dae) : daeElement(dae), _value() {}
00320 virtual ~domFloat() {}
00324 virtual domFloat &operator=( const domFloat &cpy ) { (void)cpy; return *this; }
00325
00326 public:
00331 static DLLSPEC daeElementRef create(DAE& dae);
00337 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00338 };
00339
00340 class domFloat2;
00341
00342 typedef daeSmartRef<domFloat2> domFloat2Ref;
00343 typedef daeTArray<domFloat2Ref> domFloat2_Array;
00344
00345 class domFloat2 : public daeElement
00346 {
00347 public:
00348 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT2; }
00349 static daeInt ID() { return 369; }
00350 virtual daeInt typeID() const { return ID(); }
00351
00352 protected:
00356 domGlsl_float2 _value;
00357
00358 public:
00363 domGlsl_float2 &getValue() { return _value; }
00368 const domGlsl_float2 &getValue() const { return _value; }
00373 void setValue( const domGlsl_float2 &val ) { _value = val; }
00374
00375 protected:
00379 domFloat2(DAE& dae) : daeElement(dae), _value() {}
00383 virtual ~domFloat2() {}
00387 virtual domFloat2 &operator=( const domFloat2 &cpy ) { (void)cpy; return *this; }
00388
00389 public:
00394 static DLLSPEC daeElementRef create(DAE& dae);
00400 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00401 };
00402
00403 class domFloat3;
00404
00405 typedef daeSmartRef<domFloat3> domFloat3Ref;
00406 typedef daeTArray<domFloat3Ref> domFloat3_Array;
00407
00408 class domFloat3 : public daeElement
00409 {
00410 public:
00411 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT3; }
00412 static daeInt ID() { return 370; }
00413 virtual daeInt typeID() const { return ID(); }
00414
00415 protected:
00419 domGlsl_float3 _value;
00420
00421 public:
00426 domGlsl_float3 &getValue() { return _value; }
00431 const domGlsl_float3 &getValue() const { return _value; }
00436 void setValue( const domGlsl_float3 &val ) { _value = val; }
00437
00438 protected:
00442 domFloat3(DAE& dae) : daeElement(dae), _value() {}
00446 virtual ~domFloat3() {}
00450 virtual domFloat3 &operator=( const domFloat3 &cpy ) { (void)cpy; return *this; }
00451
00452 public:
00457 static DLLSPEC daeElementRef create(DAE& dae);
00463 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00464 };
00465
00466 class domFloat4;
00467
00468 typedef daeSmartRef<domFloat4> domFloat4Ref;
00469 typedef daeTArray<domFloat4Ref> domFloat4_Array;
00470
00471 class domFloat4 : public daeElement
00472 {
00473 public:
00474 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT4; }
00475 static daeInt ID() { return 371; }
00476 virtual daeInt typeID() const { return ID(); }
00477
00478 protected:
00482 domGlsl_float4 _value;
00483
00484 public:
00489 domGlsl_float4 &getValue() { return _value; }
00494 const domGlsl_float4 &getValue() const { return _value; }
00499 void setValue( const domGlsl_float4 &val ) { _value = val; }
00500
00501 protected:
00505 domFloat4(DAE& dae) : daeElement(dae), _value() {}
00509 virtual ~domFloat4() {}
00513 virtual domFloat4 &operator=( const domFloat4 &cpy ) { (void)cpy; return *this; }
00514
00515 public:
00520 static DLLSPEC daeElementRef create(DAE& dae);
00526 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00527 };
00528
00529 class domFloat2x2;
00530
00531 typedef daeSmartRef<domFloat2x2> domFloat2x2Ref;
00532 typedef daeTArray<domFloat2x2Ref> domFloat2x2_Array;
00533
00534 class domFloat2x2 : public daeElement
00535 {
00536 public:
00537 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT2X2; }
00538 static daeInt ID() { return 372; }
00539 virtual daeInt typeID() const { return ID(); }
00540
00541 protected:
00545 domGlsl_float2x2 _value;
00546
00547 public:
00552 domGlsl_float2x2 &getValue() { return _value; }
00557 const domGlsl_float2x2 &getValue() const { return _value; }
00562 void setValue( const domGlsl_float2x2 &val ) { _value = val; }
00563
00564 protected:
00568 domFloat2x2(DAE& dae) : daeElement(dae), _value() {}
00572 virtual ~domFloat2x2() {}
00576 virtual domFloat2x2 &operator=( const domFloat2x2 &cpy ) { (void)cpy; return *this; }
00577
00578 public:
00583 static DLLSPEC daeElementRef create(DAE& dae);
00589 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00590 };
00591
00592 class domFloat3x3;
00593
00594 typedef daeSmartRef<domFloat3x3> domFloat3x3Ref;
00595 typedef daeTArray<domFloat3x3Ref> domFloat3x3_Array;
00596
00597 class domFloat3x3 : public daeElement
00598 {
00599 public:
00600 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT3X3; }
00601 static daeInt ID() { return 373; }
00602 virtual daeInt typeID() const { return ID(); }
00603
00604 protected:
00608 domGlsl_float3x3 _value;
00609
00610 public:
00615 domGlsl_float3x3 &getValue() { return _value; }
00620 const domGlsl_float3x3 &getValue() const { return _value; }
00625 void setValue( const domGlsl_float3x3 &val ) { _value = val; }
00626
00627 protected:
00631 domFloat3x3(DAE& dae) : daeElement(dae), _value() {}
00635 virtual ~domFloat3x3() {}
00639 virtual domFloat3x3 &operator=( const domFloat3x3 &cpy ) { (void)cpy; return *this; }
00640
00641 public:
00646 static DLLSPEC daeElementRef create(DAE& dae);
00652 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00653 };
00654
00655 class domFloat4x4;
00656
00657 typedef daeSmartRef<domFloat4x4> domFloat4x4Ref;
00658 typedef daeTArray<domFloat4x4Ref> domFloat4x4_Array;
00659
00660 class domFloat4x4 : public daeElement
00661 {
00662 public:
00663 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::FLOAT4X4; }
00664 static daeInt ID() { return 374; }
00665 virtual daeInt typeID() const { return ID(); }
00666
00667 protected:
00671 domGlsl_float4x4 _value;
00672
00673 public:
00678 domGlsl_float4x4 &getValue() { return _value; }
00683 const domGlsl_float4x4 &getValue() const { return _value; }
00688 void setValue( const domGlsl_float4x4 &val ) { _value = val; }
00689
00690 protected:
00694 domFloat4x4(DAE& dae) : daeElement(dae), _value() {}
00698 virtual ~domFloat4x4() {}
00702 virtual domFloat4x4 &operator=( const domFloat4x4 &cpy ) { (void)cpy; return *this; }
00703
00704 public:
00709 static DLLSPEC daeElementRef create(DAE& dae);
00715 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00716 };
00717
00718 class domInt;
00719
00720 typedef daeSmartRef<domInt> domIntRef;
00721 typedef daeTArray<domIntRef> domInt_Array;
00722
00723 class domInt : public daeElement
00724 {
00725 public:
00726 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INT; }
00727 static daeInt ID() { return 375; }
00728 virtual daeInt typeID() const { return ID(); }
00729
00730 protected:
00734 domGlsl_int _value;
00735
00736 public:
00741 domGlsl_int getValue() const { return _value; }
00746 void setValue( domGlsl_int val ) { _value = val; }
00747
00748 protected:
00752 domInt(DAE& dae) : daeElement(dae), _value() {}
00756 virtual ~domInt() {}
00760 virtual domInt &operator=( const domInt &cpy ) { (void)cpy; return *this; }
00761
00762 public:
00767 static DLLSPEC daeElementRef create(DAE& dae);
00773 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00774 };
00775
00776 class domInt2;
00777
00778 typedef daeSmartRef<domInt2> domInt2Ref;
00779 typedef daeTArray<domInt2Ref> domInt2_Array;
00780
00781 class domInt2 : public daeElement
00782 {
00783 public:
00784 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INT2; }
00785 static daeInt ID() { return 376; }
00786 virtual daeInt typeID() const { return ID(); }
00787
00788 protected:
00792 domGlsl_int2 _value;
00793
00794 public:
00799 domGlsl_int2 &getValue() { return _value; }
00804 const domGlsl_int2 &getValue() const { return _value; }
00809 void setValue( const domGlsl_int2 &val ) { _value = val; }
00810
00811 protected:
00815 domInt2(DAE& dae) : daeElement(dae), _value() {}
00819 virtual ~domInt2() {}
00823 virtual domInt2 &operator=( const domInt2 &cpy ) { (void)cpy; return *this; }
00824
00825 public:
00830 static DLLSPEC daeElementRef create(DAE& dae);
00836 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00837 };
00838
00839 class domInt3;
00840
00841 typedef daeSmartRef<domInt3> domInt3Ref;
00842 typedef daeTArray<domInt3Ref> domInt3_Array;
00843
00844 class domInt3 : public daeElement
00845 {
00846 public:
00847 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INT3; }
00848 static daeInt ID() { return 377; }
00849 virtual daeInt typeID() const { return ID(); }
00850
00851 protected:
00855 domGlsl_int3 _value;
00856
00857 public:
00862 domGlsl_int3 &getValue() { return _value; }
00867 const domGlsl_int3 &getValue() const { return _value; }
00872 void setValue( const domGlsl_int3 &val ) { _value = val; }
00873
00874 protected:
00878 domInt3(DAE& dae) : daeElement(dae), _value() {}
00882 virtual ~domInt3() {}
00886 virtual domInt3 &operator=( const domInt3 &cpy ) { (void)cpy; return *this; }
00887
00888 public:
00893 static DLLSPEC daeElementRef create(DAE& dae);
00899 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00900 };
00901
00902 class domInt4;
00903
00904 typedef daeSmartRef<domInt4> domInt4Ref;
00905 typedef daeTArray<domInt4Ref> domInt4_Array;
00906
00907 class domInt4 : public daeElement
00908 {
00909 public:
00910 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INT4; }
00911 static daeInt ID() { return 378; }
00912 virtual daeInt typeID() const { return ID(); }
00913
00914 protected:
00918 domGlsl_int4 _value;
00919
00920 public:
00925 domGlsl_int4 &getValue() { return _value; }
00930 const domGlsl_int4 &getValue() const { return _value; }
00935 void setValue( const domGlsl_int4 &val ) { _value = val; }
00936
00937 protected:
00941 domInt4(DAE& dae) : daeElement(dae), _value() {}
00945 virtual ~domInt4() {}
00949 virtual domInt4 &operator=( const domInt4 &cpy ) { (void)cpy; return *this; }
00950
00951 public:
00956 static DLLSPEC daeElementRef create(DAE& dae);
00962 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
00963 };
00964
00965 class domEnum;
00966
00967 typedef daeSmartRef<domEnum> domEnumRef;
00968 typedef daeTArray<domEnumRef> domEnum_Array;
00969
00970 class domEnum : public daeElement
00971 {
00972 public:
00973 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::ENUM; }
00974 static daeInt ID() { return 379; }
00975 virtual daeInt typeID() const { return ID(); }
00976
00977 protected:
00981 domGl_enumeration _value;
00982
00983 public:
00988 domGl_enumeration getValue() const { return _value; }
00993 void setValue( domGl_enumeration val ) { _value = val; }
00994
00995 protected:
00999 domEnum(DAE& dae) : daeElement(dae), _value() {}
01003 virtual ~domEnum() {}
01007 virtual domEnum &operator=( const domEnum &cpy ) { (void)cpy; return *this; }
01008
01009 public:
01014 static DLLSPEC daeElementRef create(DAE& dae);
01020 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
01021 };
01022
01023
01024
01025 protected:
01026 domBoolRef elemBool;
01027 domBool2Ref elemBool2;
01028 domBool3Ref elemBool3;
01029 domBool4Ref elemBool4;
01030 domFloatRef elemFloat;
01031 domFloat2Ref elemFloat2;
01032 domFloat3Ref elemFloat3;
01033 domFloat4Ref elemFloat4;
01034 domFloat2x2Ref elemFloat2x2;
01035 domFloat3x3Ref elemFloat3x3;
01036 domFloat4x4Ref elemFloat4x4;
01037 domIntRef elemInt;
01038 domInt2Ref elemInt2;
01039 domInt3Ref elemInt3;
01040 domInt4Ref elemInt4;
01041 domGlsl_surface_typeRef elemSurface;
01042 domGl_sampler1DRef elemSampler1D;
01043 domGl_sampler2DRef elemSampler2D;
01044 domGl_sampler3DRef elemSampler3D;
01045 domGl_samplerCUBERef elemSamplerCUBE;
01046 domGl_samplerRECTRef elemSamplerRECT;
01047 domGl_samplerDEPTHRef elemSamplerDEPTH;
01048 domEnumRef elemEnum;
01052 daeElementRefArray _contents;
01056 daeUIntArray _contentsOrder;
01057
01061 daeTArray< daeCharArray * > _CMData;
01062
01063
01064 public:
01069 const domBoolRef getBool() const { return elemBool; }
01074 const domBool2Ref getBool2() const { return elemBool2; }
01079 const domBool3Ref getBool3() const { return elemBool3; }
01084 const domBool4Ref getBool4() const { return elemBool4; }
01089 const domFloatRef getFloat() const { return elemFloat; }
01094 const domFloat2Ref getFloat2() const { return elemFloat2; }
01099 const domFloat3Ref getFloat3() const { return elemFloat3; }
01104 const domFloat4Ref getFloat4() const { return elemFloat4; }
01109 const domFloat2x2Ref getFloat2x2() const { return elemFloat2x2; }
01114 const domFloat3x3Ref getFloat3x3() const { return elemFloat3x3; }
01119 const domFloat4x4Ref getFloat4x4() const { return elemFloat4x4; }
01124 const domIntRef getInt() const { return elemInt; }
01129 const domInt2Ref getInt2() const { return elemInt2; }
01134 const domInt3Ref getInt3() const { return elemInt3; }
01139 const domInt4Ref getInt4() const { return elemInt4; }
01144 const domGlsl_surface_typeRef getSurface() const { return elemSurface; }
01149 const domGl_sampler1DRef getSampler1D() const { return elemSampler1D; }
01154 const domGl_sampler2DRef getSampler2D() const { return elemSampler2D; }
01159 const domGl_sampler3DRef getSampler3D() const { return elemSampler3D; }
01164 const domGl_samplerCUBERef getSamplerCUBE() const { return elemSamplerCUBE; }
01169 const domGl_samplerRECTRef getSamplerRECT() const { return elemSamplerRECT; }
01174 const domGl_samplerDEPTHRef getSamplerDEPTH() const { return elemSamplerDEPTH; }
01179 const domEnumRef getEnum() const { return elemEnum; }
01184 daeElementRefArray &getContents() { return _contents; }
01189 const daeElementRefArray &getContents() const { return _contents; }
01190
01191 protected:
01195 domGlsl_param_type(DAE& dae) : daeElement(dae), elemBool(), elemBool2(), elemBool3(), elemBool4(), elemFloat(), elemFloat2(), elemFloat3(), elemFloat4(), elemFloat2x2(), elemFloat3x3(), elemFloat4x4(), elemInt(), elemInt2(), elemInt3(), elemInt4(), elemSurface(), elemSampler1D(), elemSampler2D(), elemSampler3D(), elemSamplerCUBE(), elemSamplerRECT(), elemSamplerDEPTH(), elemEnum() {}
01199 virtual ~domGlsl_param_type() { daeElement::deleteCMDataArray(_CMData); }
01203 virtual domGlsl_param_type &operator=( const domGlsl_param_type &cpy ) { (void)cpy; return *this; }
01204
01205 public:
01210 static DLLSPEC daeElementRef create(DAE& dae);
01216 static DLLSPEC daeMetaElement* registerElement(DAE& dae);
01217 };
01218
01219
01220 #endif