16 #ifndef SURGSIM_INPUT_INPUTMANAGER_H 17 #define SURGSIM_INPUT_INPUTMANAGER_H 19 #include <boost/thread/mutex.hpp> 21 #include <unordered_map> 24 #include "SurgSim/Framework/ComponentManager.h" 30 class DeviceInterface;
32 class OutputComponent;
48 bool addDevice(std::shared_ptr<SurgSim::Input::DeviceInterface> device);
53 bool removeDevice(std::shared_ptr<SurgSim::Input::DeviceInterface> device);
58 bool doInitialize()
override;
59 bool doStartUp()
override;
60 bool doUpdate(
double dt)
override;
61 void doBeforeStop()
override;
71 bool executeAdditions(
const std::shared_ptr<SurgSim::Framework::Component>& component)
override;
76 bool executeRemovals(
const std::shared_ptr<SurgSim::Framework::Component>& component)
override;
82 bool addInputComponent(
const std::shared_ptr<InputComponent>& input);
84 bool addOutputComponent(
const std::shared_ptr<OutputComponent>& output);
93 std::vector<std::shared_ptr<InputComponent>> m_inputs;
95 std::vector<std::shared_ptr<OutputComponent>> m_outputs;
100 std::unordered_map<std::string, std::shared_ptr<SurgSim::Input::DeviceInterface>> m_devices;
103 boost::mutex m_mutex;
Wraps glewInit() to separate the glew opengl definitions from the osg opengl definitions only imgui n...
Definition: AddRandomSphereBehavior.cpp:36
Base Component Manager class.
Definition: ComponentManager.h:49