/usr/include/opencollada/COLLADASaxFrameworkLoader/COLLADASaxFWLArrayElement.h is in opencollada-dev 0.1.0~20140703.ddf8f47+dfsg1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 | /*
Copyright (c) 2008-2009 NetAllied Systems GmbH
This file is part of COLLADASaxFrameworkLoader.
Licensed under the MIT Open Source License,
for details please see LICENSE file or the website
http://www.opensource.org/licenses/mit-license.php
*/
#ifndef __COLLADASAXFWL_ARRAY_ELEMENT_H__
#define __COLLADASAXFWL_ARRAY_ELEMENT_H__
#include "COLLADASaxFWLPrerequisites.h"
#include "COLLADAFWArrayPrimitiveType.h"
#include "COLLADAFWAnimationCurve.h"
namespace COLLADASaxFWL
{
/** Base class for the storage for a homogenous array of reference values. */
template < class Type >
class BaseArrayElement
{
private:
/**
* The number of values in the array. Required.
*/
unsigned int mCount;
/**
* A text string containing the unique identifier of this element.
* This value must be unique within the instance document. Optional.
*/
String mId;
/**
* xs:NCName The text string name of this element. Optional.
*/
String mName;
/**
* The arrayValues element stores values of the templates data type
* that reference values within the instance document.
*/
COLLADAFW::ArrayPrimitiveType<Type> mValuesArray;
public:
/** Constructor. */
BaseArrayElement ()
: mCount (0)
{}
/** Destructor. */
virtual ~BaseArrayElement () {}
/**
* The number of values in the array. Required.
*/
const unsigned int getCount () const { return mCount; }
void setCount ( const unsigned int val ) { mCount = val; }
/**
* A text string containing the unique identifier of this element.
* This value must be unique within the instance document. Optional.
*/
const String getId () const { return mId; }
void setId ( const String val ) { mId = val; }
/**
* xs:NCName The text string name of this element. Optional.
*/
const String getName () const { return mName; }
void setName ( const String val ) { mName = val; }
/**
* The arrayValues element stores values of the templates data type
* that reference values within the instance document.
* @return const ArrayPrimitiveType<Type> Array of the templates datatype.
*/
const COLLADAFW::ArrayPrimitiveType<Type>& getValues () const
{
return mValuesArray;
}
/**
* The arrayValues element stores values of the templates data type
* that reference values within the instance document.
* @return const ArrayPrimitiveType<Type> Array of the templates datatype.
*/
COLLADAFW::ArrayPrimitiveType<Type>& getValues ()
{
return mValuesArray;
}
/**
* The arrayValues element stores values of the templates data type
* that reference values within the instance document.
* @param arrayValues Array of values.
*/
void setValues ( const COLLADAFW::ArrayPrimitiveType<Type>& arrayValues )
{
mValuesArray = arrayValues;
}
};
/**
* Declares the storage for a homogenous array of floating-point values.
* The <float_array> element stores the data values for generic use within
* the COLLADA schema. The arrays themselves are strongly typed but without
* semantics. They simply describe a sequence of floatingpoint values.
*/
typedef BaseArrayElement < float > FloatArrayElement;
/**
* Declares the storage for a homogenous array of floating-point values.
* The <double_array> element stores the data values for generic use within
* the COLLADA schema. The arrays themselves are strongly typed but without
* semantics. They simply describe a sequence of floatingpoint values.
*/
typedef BaseArrayElement < double > DoubleArrayElement;
#ifdef COLLADASAXFWL_REAL_IS_FLOAT
typedef FloatArrayElement RealArrayElement;
#else
typedef DoubleArrayElement RealArrayElement;
#endif
/**
* Stores a homogenous array of integer values.
* The <int_array> element stores the data values for generic use within
* the COLLADA schema. The arrays themselves are strongly typed but without
* semantics. They simply describe a sequence of integer values.
*/
typedef BaseArrayElement < int > IntArrayElement;
/**
* Stores a homogenous array of integer values.
* The <int_array> element stores the data values for generic use within
* the COLLADA schema. The arrays themselves are strongly typed but without
* semantics. They simply describe a sequence of integer values.
*/
typedef BaseArrayElement < long long > Long64ArrayElement;
/**
* Declares the storage for a homogenous array of Boolean values.
* The <bool_array> element stores data values for generic use within the
* COLLADA schema. The arrays themselves are strongly typed but without
* semantics. They simply describe a sequence of XML Boolean values.
*/
typedef BaseArrayElement < bool > BoolArrayElement;
/**
* Stores a homogenous array of symbolic name values.
* The <Name_array> element stores name values as data for generic use
* within the COLLADA schema. The array itself is strongly typed but
* without semantics. It simply stores a sequence of XML name values.
*/
typedef BaseArrayElement < String > NameArrayElement;
/**
* Declares the storage for a homogenous array of ID reference values.
* The <IDREF_array> element stores string values that reference IDs within
* the instance document.
*/
typedef BaseArrayElement < String > IDREFArrayElement;
/** Declares the storage for a homogenous array of interpolation type valuesvalues.*/
typedef BaseArrayElement < COLLADAFW::AnimationCurve::InterpolationType > InterpolationTypeArrayElement;
}
#endif // __COLLADASAXFWL_ARRAY_ELEMENT_H__
|