00001 #ifndef C_MODEL_ETHERCAT_CLIENT_H 00002 #define C_MODEL_ETHERCAT_CLIENT_H 00003 00004 #include <robotiq_c_model_control/CModel_robot_output.h> 00005 #include <robotiq_c_model_control/CModel_robot_input.h> 00006 00007 // Forward declaration of EtherCatManager 00008 namespace robotiq_ethercat 00009 { 00010 class EtherCatManager; 00011 } 00012 00013 namespace robotiq_c_model_control 00014 { 00015 00022 class CModelEtherCatClient 00023 { 00024 public: 00025 typedef robotiq_c_model_control::CModel_robot_output GripperOutput; 00026 typedef robotiq_c_model_control::CModel_robot_input GripperInput; 00027 00038 CModelEtherCatClient(robotiq_ethercat::EtherCatManager& manager, int slave_no); 00039 00045 void writeOutputs(const GripperOutput& output); 00046 00051 GripperInput readInputs() const; 00052 00057 GripperOutput readOutputs() const; 00058 00059 private: 00060 robotiq_ethercat::EtherCatManager& manager_; 00061 const int slave_no_; 00062 }; 00063 00064 } 00065 00066 #endif