/usr/include/opencollada/COLLADAFramework/COLLADAFWMaterialBinding.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 | /*
Copyright (c) 2008-2009 NetAllied Systems GmbH
This file is part of COLLADAFramework.
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 __COLLADAFW_MATERIALBINDING_H__
#define __COLLADAFW_MATERIALBINDING_H__
#include "COLLADAFWPrerequisites.h"
#include "COLLADAFWTypes.h"
#include "COLLADAFWTextureCoordinateBinding.h"
#include "COLLADAFWUniqueId.h"
namespace COLLADAFW
{
/** Holds informations how to bind a material to a mesh primitive.
The material with UniqueId @a mReferencedMaterial gets bind to all mesh primitives
with material id @a mMaterialId.*/
class MaterialBinding
{
private:
/** The MaterialId of the mesh primitives that should get bind to a material.*/
MaterialId mMaterialId;
/** Unique id of the material that should get bind to the mesh primitives.*/
UniqueId mReferencedMaterial;
/** The name of the shading engine. */
String mName;
/** A list of bindings of texture maps .*/
TextureCoordinateBindingArray mTextureCoordinateBindingArray;
public:
MaterialBinding ( const MaterialId& materialId, const UniqueId& referencedMaterial )
: mMaterialId ( materialId )
, mReferencedMaterial ( referencedMaterial )
{}
/** @return MaterialId of the mesh primitives that should get bind to a material.*/
MaterialId getMaterialId() const { return mMaterialId; }
/** Sets the MaterialId of the mesh primitives that should get bind to a material.*/
void setMaterialId(MaterialId val) { mMaterialId = val; }
/** @return Unique id of the material that should get bind to the mesh primitives.*/
const UniqueId& getReferencedMaterial() const { return mReferencedMaterial; }
/** Sets the Unique id of the material that should get bind to the mesh primitives.*/
void setReferencedMaterial(const UniqueId& val) { mReferencedMaterial = val; }
/** The comparison operator that only compares the material ids.*/
bool operator<( const MaterialBinding& rhs) const { return mMaterialId < rhs.mMaterialId; }
/** The name of the shading engine. */
const String& getName () const { return mName; }
void setName ( const String& val ) { mName = val; }
/** Returns the list of bindings of texture maps .*/
TextureCoordinateBindingArray& getTextureCoordinateBindingArray() { return mTextureCoordinateBindingArray; }
/** Returns the list of bindings of texture maps .*/
const TextureCoordinateBindingArray& getTextureCoordinateBindingArray() const { return mTextureCoordinateBindingArray; }
/** Disable default copy ctor. */
MaterialBinding( const MaterialBinding& pre )
: mMaterialId ( pre.mMaterialId )
, mReferencedMaterial ( pre.mReferencedMaterial )
, mName ( pre.mName )
, mTextureCoordinateBindingArray ()
{
pre.mTextureCoordinateBindingArray.cloneArray ( mTextureCoordinateBindingArray );
}
/** Disable default assignment operator. */
const MaterialBinding& operator= ( const MaterialBinding& pre )
{
mMaterialId = pre.mMaterialId;
mReferencedMaterial = pre.mReferencedMaterial;
mName = pre.mName;
pre.mTextureCoordinateBindingArray.cloneArray ( mTextureCoordinateBindingArray );
return *this;
}
private:
friend class Array<MaterialBinding>;
MaterialBinding(){}
};
typedef Array<MaterialBinding> MaterialBindingArray;
} // namespace COLLADAFW
#endif // __COLLADAFW_MATERIALBINDING_H__
|