Choreonoid  1.5
BodyMotionEngine.h
Go to the documentation of this file.
1 
6 #ifndef CNOID_BODYPLUGIN_BODY_MOTION_ENGINE_H
7 #define CNOID_BODYPLUGIN_BODY_MOTION_ENGINE_H
8 
9 #include <cnoid/TimeSyncItemEngine>
10 #include "exportdecl.h"
11 
12 namespace cnoid {
13 
14 class ExtensionManager;
15 class BodyItem;
16 class BodyMotionItem;
17 class AbstractSeqItem;
18 class BodyMotionEngineImpl;
19 
20 
22 {
23 public:
24  static void initialize(ExtensionManager* ext);
25 
26  static void addExtraSeqEngineFactory(
27  const std::string& key, boost::function<TimeSyncItemEngine*(BodyItem* bodyItem, AbstractSeqItem* seqItem)> factory);
28 
29  BodyMotionEngine(BodyItem* bodyItem, BodyMotionItem* motionItem);
30  virtual ~BodyMotionEngine();
31 
32  BodyItem* bodyItem();
33  BodyMotionItem* motionItem();
34 
35  virtual bool onTimeChanged(double time);
36 
37 private:
38  BodyMotionEngineImpl* impl;
39 };
40 
42 
43 }
44 
45 #endif
Definition: ExtensionManager.h:26
ref_ptr< BodyMotionEngine > BodyMotionEnginePtr
Definition: BodyMotionEngine.h:41
Definition: TimeSyncItemEngine.h:17
Definition: Referenced.h:128
Definition: BodyMotionItem.h:18
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Definition: AbstractSeqItem.h:15
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
Definition: BodyItem.h:31
Definition: BodyMotionEngine.h:21