This file is indexed.

/usr/include/opencollada/COLLADAFramework/COLLADAFWKinematicsModel.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
/*
    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_KINEMATICSMODEL_H__
#define __COLLADAFW_KINEMATICSMODEL_H__

#include "COLLADAFWPrerequisites.h"
#include "COLLADAFWTransformation.h"
#include "COLLADAFWJoint.h"
#include "COLLADAFWPointerArray.h"
#include "COLLADAFWObject.h"


namespace COLLADAFW
{

    /** A kinematics model. It describes a kinematics model, using the joints contained in mJoints. The hierarchy 
	of the model is defines by a list of LinkJointConnection that connect the joints to a link. Since links do 
	not have any properties, they are simply described by numbers, starting from 0.  */
	class KinematicsModel : public ObjectTemplate<COLLADA_TYPE::KINEMATICS_MODEL>
	{
	public:
		/** Defines the connection of a joint to a link.*/
		class LinkJointConnection
		{
		private:
			/** The number of the link. This number is used to uniquely identify one link within a specific 
			kinematics model. The base link has always number 0. */
			size_t mLinkNumber;

			/** The index of the joint in mJoints of KinematicsModel.*/
			size_t mJointIndex;

			/** The transformation defining the position and orientation of the joint, relative to the link.*/
			TransformationPointerArray mTransformations;

		public:
			LinkJointConnection( size_t linkNumber, size_t jointIndex)
				: mLinkNumber(linkNumber)
				, mJointIndex(jointIndex)
			{}

			/** Returns the number of the link. This number is used to uniquely identify one link within a specific 
			kinematics model. */
			size_t getLinkNumber() const { return mLinkNumber; }

			/** Returns the index of the joint in mJoints of KinematicsModel.*/
			size_t getJointIndex() const { return mJointIndex; }

			/** Returns the transformation defining the position and orientation of the joint, relative to the link.*/
			const TransformationPointerArray& getTransformations() const { return mTransformations; }

			/** Returns the transformation defining the position and orientation of the joint, relative to the link.*/
			TransformationPointerArray& getTransformations(){ return mTransformations; }

			/** Creates a clone of the LinkJointConnection and returns a pointer to it.*/
			LinkJointConnection* clone() const { return FW_NEW LinkJointConnection(*this); }

		};

		typedef PointerArray<LinkJointConnection> LinkJointConnections;

	private:

		/** The joints used in the kinematics model.*/
		JointPointerArray mJoints;

		/** List of LinkJointConnection that define the connection between the links and the joints. This 
		defines the hierarchy of the kinematics model.*/
		LinkJointConnections mLinkJointConnections;

		/** Indices of the kinematics models base links.*/
		SizeTValuesArray mBaseLinks;
	
	public:

        /** Constructor. */
		KinematicsModel(const UniqueId& uniqueId);

        /** Destructor. */
		virtual ~KinematicsModel();

		/** Returns the joints used in the kinematics model.*/
		const JointPointerArray& getJoints() const { return mJoints; }

		/** Returns the joints used in the kinematics model.*/
		JointPointerArray& getJoints() { return mJoints; }

		/** Returns the List of LinkJointConnection that define the connection between the links and the joints. This 
		defines the hierarchy of the kinematics model.*/
		const LinkJointConnections& getLinkJointConnections() const { return mLinkJointConnections; }

		/** Returns the List of LinkJointConnection that define the connection between the links and the joints. This 
		defines the hierarchy of the kinematics model.*/
		LinkJointConnections& getLinkJointConnections() { return mLinkJointConnections; }

		/** Returns the indices of the kinematics models base links.*/
		const SizeTValuesArray& getBaseLinks() const { return mBaseLinks; }

		/** Returns the indices of the kinematics models base links.*/
		SizeTValuesArray& getBaseLinks(){ return mBaseLinks; }

		/** Creates a clone of the KinematicsModel and returns a pointer to it.*/
		KinematicsModel* clone() const { return FW_NEW KinematicsModel(*this); }

	private:

        /** Disable default copy ctor. */
		KinematicsModel( const KinematicsModel& pre );

        /** Disable default assignment operator. */
		const KinematicsModel& operator= ( const KinematicsModel& pre );

	};

	typedef PointerArray<KinematicsModel> KinematicsModelArray;

} // namespace COLLADAFW

#endif // __COLLADAFW_KINEMATICSMODEL_H__