#ifndef LOCOMOTORPRIMITIVES_CONTROLLER_H_ #define LOCOMOTORPRIMITIVES_CONTROLLER_H_ #include #include "MuscleEMGProfile.h" class LocomotorPrimitivesController : public OpenSim::Controller { OpenSim_DECLARE_CONCRETE_OBJECT(LocomotorPrimitivesController, OpenSim::Controller); public: LocomotorPrimitivesController(OpenSim::Storage act, double alpha) : OpenSim::Controller(), _act(act), _alpha(alpha) { } int loadCsvData(const std::string &muscleName, const std::string &file); void computeControls(const SimTK::State &s, SimTK::Vector &controls) const; private: double _alpha; OpenSim::Storage _act; }; #endif /* LOCOMOTORPRIMITIVES_CONTROLLER_H_ */