6 #ifndef CNOID_UTIL_ABSTRACT_SEQ_H 7 #define CNOID_UTIL_ABSTRACT_SEQ_H 10 #include <boost/shared_ptr.hpp> 11 #include <boost/function.hpp> 32 virtual AbstractSeqPtr cloneSeq()
const = 0;
42 virtual double getFrameRate()
const = 0;
43 virtual void setFrameRate(
double frameRate) = 0;
46 return 1.0 / getFrameRate();
50 return setFrameRate(1.0 / timeStep);
54 return frame / getFrameRate();
57 virtual int getOffsetTimeFrame()
const;
60 return getOffsetTimeFrame() / getFrameRate();
63 virtual int getNumFrames()
const = 0;
64 virtual void setNumFrames(
int n,
bool clearNewElements =
false) = 0;
67 return setNumFrames(static_cast<int>(length * getFrameRate()), clearNewElements);
78 return getNumFrames() / getFrameRate();
86 this->content = content;
89 bool readSeq(
const Mapping& archive);
100 virtual bool doReadSeq(
const Mapping& archive);
103 bool checkSeqContent(
const Mapping& archive,
const std::string contentName,
bool throwEx =
false);
108 this->message += message;
112 std::string seqType_;
125 virtual AbstractSeqPtr cloneSeq()
const = 0;
130 virtual void setDimension(
int numFrames,
int numParts,
bool clearNewElements =
false) = 0;
132 virtual void setNumParts(
int numParts,
bool clearNewElements =
false) = 0;
133 virtual int getNumParts()
const = 0;
135 virtual int partIndex(
const std::string& partLabel)
const;
136 virtual const std::string& partLabel(
int partIndex)
const;
142 bool readSeqPartLabels(
const Mapping& archive, SetPartLabelFunction setPartLabel);
void setTimeStep(double timeStep)
Definition: AbstractSeq.h:49
void addSeqMessage(const std::string &message)
Definition: AbstractSeq.h:107
Definition: ValueTree.h:224
const std::string & seqContentName()
Definition: AbstractSeq.h:81
void clearSeqMessage()
Definition: AbstractSeq.h:105
static const double defaultFrameRate()
Definition: AbstractSeq.h:96
Definition: YAMLWriter.h:18
const std::string & seqType() const
Definition: AbstractSeq.h:38
Definition: AbstractSeq.h:118
boost::shared_ptr< AbstractSeq > AbstractSeqPtr
Definition: AbstractSeq.h:19
double getTimeLength() const
Definition: AbstractSeq.h:77
const std::string & seqMessage() const
Definition: AbstractSeq.h:92
double getTimeOfFrame(int frame)
Definition: AbstractSeq.h:53
Definition: AbstractSeq.h:23
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
boost::function< void(const std::string &label, int index)> SetPartLabelFunction
Definition: AbstractSeq.h:141
boost::shared_ptr< AbstractMultiSeq > AbstractMultiSeqPtr
Definition: AbstractSeq.h:146
double getTimeStep() const
Definition: AbstractSeq.h:45
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
double getOffsetTime() const
Definition: AbstractSeq.h:59
void setTimeLength(double length, bool clearNewElements=false)
Definition: AbstractSeq.h:66
virtual void setSeqContentName(const std::string &content)
Definition: AbstractSeq.h:85