-
Notifications
You must be signed in to change notification settings - Fork 5
/
OpenHRPClockGeneratorItem.h
46 lines (35 loc) · 1.24 KB
/
OpenHRPClockGeneratorItem.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/**
@author Shin'ichiro Nakaoka
*/
#ifndef CNOID_OPENHRP_PLUGIN_OPENHRP_CLOCK_GENERATOR_ITEM_H
#define CNOID_OPENHRP_PLUGIN_OPENHRP_CLOCK_GENERATOR_ITEM_H
#include <cnoid/ControllerItem>
namespace cnoid {
class ExtensionManager;
class OpenHRPClockGenerator_impl;
class OpenHRPClockGeneratorItem : public ControllerItem
{
public:
static void initialize(ExtensionManager* ext);
OpenHRPClockGeneratorItem();
OpenHRPClockGeneratorItem(const OpenHRPClockGeneratorItem& org);
virtual ~OpenHRPClockGeneratorItem();
virtual bool initialize(ControllerIO* io) override;
virtual double timeStep() const override;
virtual void input() override;
virtual bool control() override;
virtual void output() override;
virtual void stop() override;
protected:
virtual void onDisconnectedFromRoot() override;
virtual Item* doDuplicate() const override;
virtual void doPutProperties(PutPropertyFunction& putProperty) override;
virtual bool store(Archive& archive) override;
virtual bool restore(const Archive& archive) override;
private:
static OpenHRPClockGenerator_impl* clockGenerator;
double timeStep_;
};
typedef ref_ptr<OpenHRPClockGeneratorItem> OpenHRPClockGeneratorItemPtr;
}
#endif