22 #ifndef OPENRAVE_TRAJECTORY_H
23 #define OPENRAVE_TRAJECTORY_H
50 virtual void Insert(
size_t index,
const std::vector<dReal>& data,
bool bOverwrite=
false) = 0;
59 virtual void Insert(
size_t index,
const std::vector<dReal>& data,
const ConfigurationSpecification& spec,
bool bOverwrite=
false) = 0;
62 virtual void Remove(
size_t startindex,
size_t endindex) = 0;
69 virtual void Sample(std::vector<dReal>& data,
dReal time)
const = 0;
83 virtual size_t GetNumWaypoints()
const = 0;
91 virtual void GetWaypoints(
size_t startindex,
size_t endindex, std::vector<dReal>& data)
const = 0;
101 virtual void GetWaypoints(
size_t startindex,
size_t endindex, std::vector<dReal>& data,
const ConfigurationSpecification& spec)
const;
108 inline void GetWaypoint(
int index, std::vector<dReal>& data)
const
110 int numpoints = GetNumWaypoints();
111 BOOST_ASSERT(index >= -numpoints && index < numpoints);
115 GetWaypoints(index,index+1,data);
125 int numpoints = GetNumWaypoints();
126 BOOST_ASSERT(index >= -numpoints && index < numpoints);
130 GetWaypoints(index,index+1,data,spec);
134 virtual dReal GetDuration()
const = 0;
137 virtual void serialize(std::ostream& O,
int options=0)
const;
152 Point(
const std::vector<dReal>& newq,
dReal newtime) : time(newtime) {
176 return GetConfigurationSpecification().GetDOF();
182 return GetDuration();
187 serialize(O,options);
208 Remove(0,GetNumWaypoints());
217 Remove(0,GetNumWaypoints());
237 return boost::static_pointer_cast<
TrajectoryBase>(shared_from_this());
240 return boost::static_pointer_cast<
TrajectoryBase const>(shared_from_this());
244 virtual const char* GetHash()
const {
249 mutable std::vector<Point> __vdeprecatedpoints;
257 #endif // TRAJECTORY_H