Choreonoid  1.1
MultiAffine3Seq.h
[詳解]
1 
6 #ifndef CNOID_UTIL_MULTI_AFFINE3_SEQ_H_INCLUDED
7 #define CNOID_UTIL_MULTI_AFFINE3_SEQ_H_INCLUDED
8 
9 #include "MultiSeq.h"
10 #include "EigenTypes.h"
11 #include "exportdecl.h"
12 
13 namespace cnoid {
14 
15  class YamlWriter;
16  class YamlMapping;
17 
18  class CNOID_EXPORT MultiAffine3Seq : public MultiSeq<Affine3, Eigen::aligned_allocator<Affine3> >
19  {
21 
22  public:
23  typedef boost::shared_ptr<MultiAffine3Seq> Ptr;
24 
25  MultiAffine3Seq(int numParts = 1, int numFrames = 0, double frameRate = DEFAULT_FRAME_RATE);
26  MultiAffine3Seq(const MultiAffine3Seq& org);
27  virtual ~MultiAffine3Seq();
28 
29  virtual bool write(YamlWriter& writer);
30  virtual bool read(const YamlMapping& archive);
31 
32  virtual bool loadPlainFormat(const std::string& filename);
33  bool saveTopPartAsPlainFormat(const std::string& filename);
34 
35  protected:
36  virtual Affine3 defaultValue() const { return Affine3::Identity(); }
37 
38  };
39 
41 }
42 
43 #endif
Definition: YamlWriter.h:18
bool read(const YamlMapping &mapping, const std::string &key, Eigen::MatrixBase< Derived > &x)
Definition: EigenYaml.h:14
Eigen::Affine3d Affine3
Definition: EigenTypes.h:29
virtual Affine3 defaultValue() const
Definition: MultiAffine3Seq.h:36
YamlSequence & write(YamlMapping &mapping, const std::string &key, const Eigen::MatrixBase< Derived > &x)
Definition: EigenYaml.h:46
boost::shared_ptr< MultiAffine3Seq > Ptr
Definition: MultiAffine3Seq.h:23
Definition: MultiSeq.h:16
MultiAffine3Seq::Ptr MultiAffine3SeqPtr
Definition: MultiAffine3Seq.h:40
Definition: YamlNodes.h:212
Definition: MultiAffine3Seq.h:18
#define CNOID_EXPORT
Definition: Util/exportdecl.h:13