41 #include <hardware_interface/internal/hardware_resource_manager.h>
49 ActuatorExtraHandle(std::string name,
bool* halted,
bool* need_calibration,
bool* calibrated,
50 bool* calibration_reading,
double* pos,
double* offset)
51 :
name_(std::move(name))
60 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
61 "'. halted pointer is null.");
62 if (!need_calibration)
63 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
64 "'. need_calibration pointer is null.");
66 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
67 "'. calibrated pointer is null.");
68 if (!calibration_reading)
69 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
70 "'. calibration reading pointer is null.");
72 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
"'. pos pointer is null.");
74 throw hardware_interface::HardwareInterfaceException(
"Cannot create handle '" + name +
75 "'. offset pointer is null.");
130 class ActuatorExtraInterface
131 :
public hardware_interface::HardwareResourceManager<ActuatorExtraHandle, hardware_interface::ClaimResources>