Choreonoid  1.5
MultiAffine3Seq.h
Go to the documentation of this file.
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 Mapping;
16 class YAMLWriter;
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 
26  MultiAffine3Seq(int numFrames, int numParts = 1);
27  MultiAffine3Seq(const MultiAffine3Seq& org);
28  virtual ~MultiAffine3Seq();
29 
30  virtual AbstractSeqPtr cloneSeq() const;
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  virtual bool doWriteSeq(YAMLWriter& writer);
39  virtual bool doReadSeq(const Mapping& archive);
40 };
41 
43 }
44 
45 #endif
Definition: ValueTree.h:224
Definition: YAMLWriter.h:18
Eigen::Affine3d Affine3
Definition: EigenTypes.h:64
virtual Affine3 defaultValue() const
Definition: MultiAffine3Seq.h:36
boost::shared_ptr< AbstractSeq > AbstractSeqPtr
Definition: AbstractSeq.h:19
boost::shared_ptr< MultiAffine3Seq > Ptr
Definition: MultiAffine3Seq.h:23
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Definition: MultiSeq.h:19
MultiAffine3Seq::Ptr MultiAffine3SeqPtr
Definition: MultiAffine3Seq.h:42
Definition: MultiAffine3Seq.h:18
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37