Choreonoid  1.5
AccelerationSensor.h
Go to the documentation of this file.
1 
6 #ifndef CNOID_BODY_ACCELERATION_SENSOR_H
7 #define CNOID_BODY_ACCELERATION_SENSOR_H
8 
9 #include "Device.h"
10 #include <boost/scoped_ptr.hpp>
11 #include "exportdecl.h"
12 
13 namespace cnoid {
14 
16 {
17  Vector3 dv_;
18 
19  struct Spec {
20  Vector3 dv_max;
21  };
22  boost::scoped_ptr<Spec> spec;
23 
24 public:
26  AccelerationSensor(const AccelerationSensor& org, bool copyStateOnly = false);
27 
28  virtual const char* typeName();
29  void copyStateFrom(const AccelerationSensor& other);
30  virtual void copyStateFrom(const DeviceState& other);
31  virtual DeviceState* cloneState() const;
32  virtual Device* clone() const;
33  virtual void forEachActualType(boost::function<bool(const std::type_info& type)> func);
34  virtual void clearState();
35  virtual int stateSize() const;
36  virtual const double* readState(const double* buf);
37  virtual double* writeState(double* out_buf) const;
38 
39  const Vector3& dv() const { return dv_; }
40  Vector3& dv() { return dv_; }
41 
42  const Vector3& dv_max() const { return spec->dv_max; }
43  Vector3& dv_max() { return spec->dv_max; }
44 };
45 
47 
48 // for the backward compatibility
49 //typedef AccelerationSensorPtr AccelSensor;
50 //typedef ref_ptr<AccelSensor> AccelSensorPtr;
51 
52 };
53 
54 #endif
const Vector3 & dv_max() const
Definition: AccelerationSensor.h:42
Definition: AccelerationSensor.h:15
ref_ptr< AccelerationSensor > AccelerationSensorPtr
Definition: AccelerationSensor.h:46
Definition: Referenced.h:128
const Vector3 & dv() const
Definition: AccelerationSensor.h:39
Definition: Device.h:18
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Vector3 & dv()
Definition: AccelerationSensor.h:40
Eigen::Vector3d Vector3
Definition: EigenTypes.h:58
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
Vector3 & dv_max()
Definition: AccelerationSensor.h:43
Definition: Device.h:52