1 #include <dae.h>
2 #include <dae/daeDom.h>
3 #include <1.5/dom/domInt_array.h>
4 #include <dae/daeMetaCMPolicy.h>
5 #include <dae/daeMetaSequence.h>
6 #include <dae/daeMetaChoice.h>
7 #include <dae/daeMetaGroup.h>
8 #include <dae/daeMetaAny.h>
9 #include <dae/daeMetaElementAttribute.h>
10 
11 
12 namespace ColladaDOM150 {
13 daeElementRef
create(DAE & dae)14 domInt_array::create(DAE& dae)
15 {
16 	domInt_arrayRef ref = new domInt_array(dae);
17 	return ref;
18 }
19 
20 
21 daeMetaElement *
registerElement(DAE & dae)22 domInt_array::registerElement(DAE& dae)
23 {
24 	daeMetaElement* meta = dae.getMeta(ID());
25 	if ( meta != NULL ) return meta;
26 
27 	meta = new daeMetaElement(dae);
28 	dae.setMeta(ID(), *meta);
29 	meta->setName( "int_array" );
30 	meta->registerClass(domInt_array::create);
31 
32 	//	Add attribute: _value
33 	{
34 		daeMetaAttribute *ma = new daeMetaArrayAttribute;
35 		ma->setName( "_value" );
36 		ma->setType( dae.getAtomicTypes().get("List_of_ints"));
37 		ma->setOffset( daeOffsetOf( domInt_array , _value ));
38 		ma->setContainer( meta );
39 		meta->appendAttribute(ma);
40 	}
41 
42 	//	Add attribute: id
43 	{
44 		daeMetaAttribute *ma = new daeMetaAttribute;
45 		ma->setName( "id" );
46 		ma->setType( dae.getAtomicTypes().get("xsID"));
47 		ma->setOffset( daeOffsetOf( domInt_array , attrId ));
48 		ma->setContainer( meta );
49 
50 		meta->appendAttribute(ma);
51 	}
52 
53 	//	Add attribute: name
54 	{
55 		daeMetaAttribute *ma = new daeMetaAttribute;
56 		ma->setName( "name" );
57 		ma->setType( dae.getAtomicTypes().get("xsToken"));
58 		ma->setOffset( daeOffsetOf( domInt_array , attrName ));
59 		ma->setContainer( meta );
60 
61 		meta->appendAttribute(ma);
62 	}
63 
64 	//	Add attribute: count
65 	{
66 		daeMetaAttribute *ma = new daeMetaAttribute;
67 		ma->setName( "count" );
68 		ma->setType( dae.getAtomicTypes().get("Uint"));
69 		ma->setOffset( daeOffsetOf( domInt_array , attrCount ));
70 		ma->setContainer( meta );
71 		ma->setIsRequired( true );
72 
73 		meta->appendAttribute(ma);
74 	}
75 
76 	//	Add attribute: minInclusive
77 	{
78 		daeMetaAttribute *ma = new daeMetaAttribute;
79 		ma->setName( "minInclusive" );
80 		ma->setType( dae.getAtomicTypes().get("xsInteger"));
81 		ma->setOffset( daeOffsetOf( domInt_array , attrMinInclusive ));
82 		ma->setContainer( meta );
83 		ma->setDefaultString( "-2147483648");
84 
85 		meta->appendAttribute(ma);
86 	}
87 
88 	//	Add attribute: maxInclusive
89 	{
90 		daeMetaAttribute *ma = new daeMetaAttribute;
91 		ma->setName( "maxInclusive" );
92 		ma->setType( dae.getAtomicTypes().get("xsInteger"));
93 		ma->setOffset( daeOffsetOf( domInt_array , attrMaxInclusive ));
94 		ma->setContainer( meta );
95 		ma->setDefaultString( "2147483647");
96 
97 		meta->appendAttribute(ma);
98 	}
99 
100 	meta->setElementSize(sizeof(domInt_array));
101 	meta->validate();
102 
103 	return meta;
104 }
105 
106 } // ColladaDOM150
107