Blender  V3.3
FixedObject.hpp
Go to the documentation of this file.
1 /* SPDX-License-Identifier: LGPL-2.1-or-later
2  * Copyright 2009 Benoit Bolsee. */
3 
8 #ifndef FIXEDOBJECT_HPP_
9 #define FIXEDOBJECT_HPP_
10 
11 #include "UncontrolledObject.hpp"
12 #include <vector>
13 
14 
15 namespace iTaSC{
16 
18 public:
19  FixedObject();
20  virtual ~FixedObject();
21 
22  int addFrame(const std::string& name, const Frame& frame);
23 
24  virtual void updateCoordinates(const Timestamp& timestamp) {};
25  virtual int addEndEffector(const std::string& name);
26  virtual bool finalize();
27  virtual const Frame& getPose(const unsigned int frameIndex);
28  virtual void updateKinematics(const Timestamp& timestamp) {};
29  virtual void pushCache(const Timestamp& timestamp) {};
30  virtual void initCache(Cache *_cache) {};
31 
32 protected:
33  virtual void updateJacobian() {}
34 private:
35  typedef std::vector<std::pair<std::string, Frame> > FrameList;
36 
37  bool m_finalized;
38  unsigned int m_nframe;
39  FrameList m_frameArray;
40 
41 };
42 
43 }
44 
45 #endif /* FIXEDOBJECT_H_ */
represents a frame transformation in 3D space (rotation + translation)
Definition: frames.hpp:526
virtual void updateKinematics(const Timestamp &timestamp)
Definition: FixedObject.hpp:28
virtual void updateJacobian()
Definition: FixedObject.hpp:33
virtual void initCache(Cache *_cache)
Definition: FixedObject.hpp:30
virtual ~FixedObject()
Definition: FixedObject.cpp:18
int addFrame(const std::string &name, const Frame &frame)
Definition: FixedObject.cpp:23
virtual void updateCoordinates(const Timestamp &timestamp)
Definition: FixedObject.hpp:24
virtual bool finalize()
Definition: FixedObject.cpp:53
virtual void pushCache(const Timestamp &timestamp)
Definition: FixedObject.hpp:29
virtual const Frame & getPose(const unsigned int frameIndex)
Definition: FixedObject.cpp:62
virtual int addEndEffector(const std::string &name)
Definition: FixedObject.cpp:40