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
|
/*
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_SKINCONTROLLER_H__
#define __COLLADAFW_SKINCONTROLLER_H__
#include "COLLADAFWPrerequisites.h"
#include "COLLADAFWController.h"
#include "COLLADAFWUniqueId.h"
namespace COLLADAFW
{
/** A skin controller. This class binds the skeleton (the joints ) to the skin data
( the weights and the bind matrices). */
class SkinController : public Controller
{
private:
/** The unique id of the skin controller data.*/
UniqueId mSkinControllerData;
/** The unique ids of the nodes, referenced by the skin controller.*/
UniqueIdArray mJoints;
public:
/** Constructor. */
SkinController( const UniqueId& uniqueId );
/** Copy-Constructor. */
SkinController( const SkinController& pre );
/** Destructor. */
virtual ~SkinController(){}
/** The unique id of the skin controller data.*/
const UniqueId& getSkinControllerData() const { return mSkinControllerData; }
/** The unique id of the skin controller data.*/
void setSkinControllerData( const UniqueId& skinControllerData) { mSkinControllerData = skinControllerData; }
/** The unique ids of the nodes, referenced by the skin controller.*/
UniqueIdArray& getJoints() { return mJoints; }
/** The unique ids of the nodes, referenced by the skin controller.*/
const UniqueIdArray& getJoints() const { return mJoints; }
private:
/** Disable default assignment operator. */
const SkinController& operator= ( const SkinController& pre );
};
} // namespace COLLADAFW
#endif // __COLLADAFW_SKINCONTROLLER_H__
|