Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
canopen::Motor402 Class Reference

#include <motor.h>

Inheritance diagram for canopen::Motor402:
Inheritance graph
[legend]

List of all members.

Classes

class  Allocator

Public Member Functions

virtual bool enterModeAndWait (uint16_t mode)
virtual uint16_t getMode ()
virtual bool isModeSupported (uint16_t mode)
 Motor402 (const std::string &name, boost::shared_ptr< ObjectStorage > storage, const canopen::Settings &settings)
virtual void registerDefaultModes (boost::shared_ptr< ObjectStorage > storage)
template<typename T >
bool registerMode (uint16_t mode)
template<typename T , typename T1 >
bool registerMode (uint16_t mode, const T1 &t1)
template<typename T , typename T1 , typename T2 >
bool registerMode (uint16_t mode, const T1 &t1, const T2 &t2)
virtual bool setTarget (double val)

Protected Member Functions

virtual void handleDiag (LayerReport &report)
virtual void handleHalt (LayerStatus &status)
virtual void handleInit (LayerStatus &status)
virtual void handleRead (LayerStatus &status, const LayerState &current_state)
virtual void handleRecover (LayerStatus &status)
virtual void handleShutdown (LayerStatus &status)
virtual void handleWrite (LayerStatus &status, const LayerState &current_state)

Private Member Functions

boost::shared_ptr< ModeallocMode (uint16_t mode)
template<typename T , typename T1 >
void createAndRegister (uint16_t mode, const T1 &t1)
template<typename T , typename T1 , typename T2 >
void createAndRegister (uint16_t mode, const T1 &t1, const T2 &t2)
template<typename T >
void createAndRegister0 (uint16_t mode)
virtual bool isModeSupportedByDevice (uint16_t mode)
bool readState (LayerStatus &status, const LayerState &current_state)
void registerMode (uint16_t id, const boost::shared_ptr< Mode > &m)
bool switchMode (LayerStatus &status, uint16_t mode)
bool switchState (LayerStatus &status, const State402::InternalState &target)

Private Attributes

uint16_t control_word_
canopen::ObjectStorage::Entry
< uint16_t > 
control_word_entry_
boost::mutex cw_mutex_
boost::mutex map_mutex_
boost::unordered_map< uint16_t,
boost::function< void()> > 
mode_allocators_
boost::condition_variable mode_cond_
uint16_t mode_id_
boost::mutex mode_mutex_
boost::unordered_map< uint16_t,
boost::shared_ptr< Mode > > 
modes_
const bool monitor_mode_
canopen::ObjectStorage::Entry
< int8_t > 
op_mode_
canopen::ObjectStorage::Entry
< int8_t > 
op_mode_display_
boost::shared_ptr< Modeselected_mode_
boost::atomic< bool > start_fault_reset_
State402 state_handler_
boost::atomic< uint16_t > status_word_
canopen::ObjectStorage::Entry
< uint16_t > 
status_word_entry_
canopen::ObjectStorage::Entry
< uint32_t > 
supported_drive_modes_
const State402::InternalState switching_state_
boost::atomic
< State402::InternalState
target_state_

Detailed Description

Definition at line 291 of file motor.h.


Constructor & Destructor Documentation

canopen::Motor402::Motor402 ( const std::string &  name,
boost::shared_ptr< ObjectStorage storage,
const canopen::Settings settings 
) [inline]

Definition at line 295 of file motor.h.


Member Function Documentation

boost::shared_ptr< Mode > canopen::Motor402::allocMode ( uint16_t  mode) [private]

Definition at line 275 of file motor.cpp.

template<typename T , typename T1 >
void canopen::Motor402::createAndRegister ( uint16_t  mode,
const T1 &  t1 
) [inline, private]

Definition at line 355 of file motor.h.

template<typename T , typename T1 , typename T2 >
void canopen::Motor402::createAndRegister ( uint16_t  mode,
const T1 &  t1,
const T2 &  t2 
) [inline, private]

Definition at line 358 of file motor.h.

template<typename T >
void canopen::Motor402::createAndRegister0 ( uint16_t  mode) [inline, private]

Definition at line 352 of file motor.h.

bool canopen::Motor402::enterModeAndWait ( uint16_t  mode) [virtual]

Implements canopen::MotorBase.

Definition at line 253 of file motor.cpp.

uint16_t canopen::Motor402::getMode ( ) [virtual]

Implements canopen::MotorBase.

Definition at line 262 of file motor.cpp.

void canopen::Motor402::handleDiag ( LayerReport report) [protected, virtual]

Implements canopen::Layer.

Definition at line 434 of file motor.cpp.

void canopen::Motor402::handleHalt ( LayerStatus status) [protected, virtual]

Implements canopen::Layer.

Definition at line 514 of file motor.cpp.

void canopen::Motor402::handleInit ( LayerStatus status) [protected, virtual]

Implements canopen::Layer.

Definition at line 467 of file motor.cpp.

void canopen::Motor402::handleRead ( LayerStatus status,
const LayerState current_state 
) [protected, virtual]

Implements canopen::Layer.

Definition at line 405 of file motor.cpp.

void canopen::Motor402::handleRecover ( LayerStatus status) [protected, virtual]

Implements canopen::Layer.

Definition at line 530 of file motor.cpp.

void canopen::Motor402::handleShutdown ( LayerStatus status) [protected, virtual]

Implements canopen::Layer.

Definition at line 510 of file motor.cpp.

void canopen::Motor402::handleWrite ( LayerStatus status,
const LayerState current_state 
) [protected, virtual]

Implements canopen::Layer.

Definition at line 410 of file motor.cpp.

bool canopen::Motor402::isModeSupported ( uint16_t  mode) [virtual]

Implements canopen::MotorBase.

Definition at line 251 of file motor.cpp.

bool canopen::Motor402::isModeSupportedByDevice ( uint16_t  mode) [private, virtual]

Definition at line 267 of file motor.cpp.

bool canopen::Motor402::readState ( LayerStatus status,
const LayerState current_state 
) [private]

Definition at line 375 of file motor.cpp.

virtual void canopen::Motor402::registerDefaultModes ( boost::shared_ptr< ObjectStorage storage) [inline, virtual]

Reimplemented from canopen::MotorBase.

Definition at line 326 of file motor.h.

template<typename T >
bool canopen::Motor402::registerMode ( uint16_t  mode) [inline]

Definition at line 316 of file motor.h.

template<typename T , typename T1 >
bool canopen::Motor402::registerMode ( uint16_t  mode,
const T1 &  t1 
) [inline]

Definition at line 319 of file motor.h.

template<typename T , typename T1 , typename T2 >
bool canopen::Motor402::registerMode ( uint16_t  mode,
const T1 &  t1,
const T2 &  t2 
) [inline]

Definition at line 322 of file motor.h.

void canopen::Motor402::registerMode ( uint16_t  id,
const boost::shared_ptr< Mode > &  m 
) [private]

Definition at line 270 of file motor.cpp.

bool canopen::Motor402::setTarget ( double  val) [virtual]

Implements canopen::MotorBase.

Definition at line 244 of file motor.cpp.

bool canopen::Motor402::switchMode ( LayerStatus status,
uint16_t  mode 
) [private]

Definition at line 287 of file motor.cpp.

bool canopen::Motor402::switchState ( LayerStatus status,
const State402::InternalState target 
) [private]

Definition at line 355 of file motor.cpp.


Member Data Documentation

Definition at line 372 of file motor.h.

Definition at line 392 of file motor.h.

boost::mutex canopen::Motor402::cw_mutex_ [private]

Definition at line 373 of file motor.h.

boost::mutex canopen::Motor402::map_mutex_ [private]

Definition at line 380 of file motor.h.

boost::unordered_map<uint16_t, boost::function<void()> > canopen::Motor402::mode_allocators_ [private]

Definition at line 382 of file motor.h.

boost::condition_variable canopen::Motor402::mode_cond_ [private]

Definition at line 386 of file motor.h.

uint16_t canopen::Motor402::mode_id_ [private]

Definition at line 385 of file motor.h.

boost::mutex canopen::Motor402::mode_mutex_ [private]

Definition at line 387 of file motor.h.

boost::unordered_map<uint16_t, boost::shared_ptr<Mode> > canopen::Motor402::modes_ [private]

Definition at line 381 of file motor.h.

const bool canopen::Motor402::monitor_mode_ [private]

Definition at line 389 of file motor.h.

Definition at line 394 of file motor.h.

Definition at line 393 of file motor.h.

boost::shared_ptr<Mode> canopen::Motor402::selected_mode_ [private]

Definition at line 384 of file motor.h.

boost::atomic<bool> canopen::Motor402::start_fault_reset_ [private]

Definition at line 374 of file motor.h.

Definition at line 378 of file motor.h.

boost::atomic<uint16_t> canopen::Motor402::status_word_ [private]

Definition at line 371 of file motor.h.

Definition at line 391 of file motor.h.

Definition at line 395 of file motor.h.

Definition at line 388 of file motor.h.

Definition at line 375 of file motor.h.


The documentation for this class was generated from the following files:


canopen_402
Author(s): Thiago de Freitas , Mathias Lüdtke
autogenerated on Sun Sep 3 2017 03:10:49