cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mtsIntuitiveResearchKitECM.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3 
4 /*
5  Author(s): Anton Deguet
6  Created on: 2013-05-15
7 
8  (C) Copyright 2013-2015 Johns Hopkins University (JHU), All Rights Reserved.
9 
10 --- begin cisst license - do not edit ---
11 
12 This software is provided "as is" under an open source license, with
13 no warranty. The complete license can be found in license.txt and
14 http://www.cisst.org/cisst/license.txt.
15 
16 --- end cisst license ---
17 */
18 
19 
20 #ifndef _mtsIntuitiveResearchKitECM_h
21 #define _mtsIntuitiveResearchKitECM_h
22 
24 
25 
27 {
29 
30 public:
31  mtsIntuitiveResearchKitECM(const std::string & componentName, const double periodInSeconds);
34 
35 protected:
36 
38  inline size_t NumberOfAxes(void) const {
39  return 4;
40  }
41 
42  inline size_t NumberOfJoints(void) const {
43  return 4;
44  }
45 
46  inline size_t NumberOfJointsKinematics(void) const {
47  return 4;
48  }
49 
50  inline size_t NumberOfBrakes(void) const {
51  return 3;
52  }
53 
54  inline bool UsePIDTrackingError(void) const {
55  return true;
56  }
57 
59  const vctFrm4x4 & cartesianGoal);
60 
61  void Init(void);
62 
65  void SetState(const mtsIntuitiveResearchKitArmTypes::RobotStateType & newState);
66 
67  void SetRobotControlState(const std::string & state);
68 
70  void RunHomingCalibrateArm(void);
71 
72  void EventHandlerTrackingError(void);
73  void EventHandlerManipClutch(const prmEventButton & button);
74 
75  struct {
77  bool IsPressed;
78  } ManipClutch;
79 
80  // Functions for events
81  struct {
83  mtsIntuitiveResearchKitArmTypes::RobotStateType ManipClutchPreviousState;
84  } ClutchEvents;
85 };
86 
88 
89 #endif // _mtsIntuitiveResearchKitECM_h
size_t NumberOfJointsKinematics(void) const
Definition: mtsIntuitiveResearchKitECM.h:46
Definition: mtsFunctionRead.h:37
robManipulator::Errno InverseKinematics(vctDoubleVec &jointSet, const vctFrm4x4 &cartesianGoal)
CMN_DECLARE_SERVICES_INSTANTIATION(mtsIntuitiveResearchKitECM)
Definition: mtsIntuitiveResearchKitArm.h:36
size_t NumberOfJoints(void) const
Definition: mtsIntuitiveResearchKitECM.h:42
mtsIntuitiveResearchKitECM(const std::string &componentName, const double periodInSeconds)
Definition: mtsTaskPeriodic.h:38
void EventHandlerManipClutch(const prmEventButton &button)
bool IsPressed
Definition: mtsIntuitiveResearchKitECM.h:77
Errno
Definition: robManipulator.h:43
void EventHandlerTrackingError(void)
const int CMN_DYNAMIC_CREATION_ONEARG
Definition: cmnClassRegisterMacros.h:333
~mtsIntuitiveResearchKitECM()
Definition: mtsIntuitiveResearchKitECM.h:33
Definition: prmEventButton.h:37
Definition: mtsIntuitiveResearchKitECM.h:26
mtsIntuitiveResearchKitArmTypes::RobotStateType ManipClutchPreviousState
Definition: mtsIntuitiveResearchKitECM.h:83
void SetRobotControlState(const std::string &state)
bool UsePIDTrackingError(void) const
Definition: mtsIntuitiveResearchKitECM.h:54
mtsFunctionRead GetButton
Definition: mtsIntuitiveResearchKitECM.h:76
size_t NumberOfBrakes(void) const
Definition: mtsIntuitiveResearchKitECM.h:50
struct mtsIntuitiveResearchKitECM::@188 ClutchEvents
void SetState(const mtsIntuitiveResearchKitArmTypes::RobotStateType &newState)
Definition: mtsFunctionWrite.h:37
struct mtsIntuitiveResearchKitECM::@187 ManipClutch
size_t NumberOfAxes(void) const
Definition: mtsIntuitiveResearchKitECM.h:38
#define CMN_LOG_ALLOW_DEFAULT
Definition: cmnLogLoD.h:76
mtsFunctionWrite ManipClutch
Definition: mtsIntuitiveResearchKitECM.h:82