Public Member Functions | Private Member Functions | Private Attributes | List of all members
canopen::EMCYHandler Class Reference

#include <canopen.h>

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

Public Member Functions

 EMCYHandler (const can::CommInterfaceSharedPtr interface, const ObjectStorageSharedPtr storage)
 
void resetErrors (LayerStatus &status)
 
- Public Member Functions inherited from canopen::Layer
void diag (LayerReport &report)
 
LayerState getLayerState ()
 
void halt (LayerStatus &status)
 
void init (LayerStatus &status)
 
 Layer (const std::string &n)
 
void read (LayerStatus &status)
 
void recover (LayerStatus &status)
 
void shutdown (LayerStatus &status)
 
void write (LayerStatus &status)
 
virtual ~Layer ()
 

Private Member Functions

virtual void handleDiag (LayerReport &report)
 
void handleEMCY (const can::Frame &msg)
 
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 Attributes

can::FrameListenerConstSharedPtr emcy_listener_
 
ObjectStorage::Entry< uint8_t > error_register_
 
std::atomic< bool > has_error_
 
ObjectStorage::Entry< uint8_t > num_errors_
 
const ObjectStorageSharedPtr storage_
 

Additional Inherited Members

- Public Types inherited from canopen::Layer
enum  LayerState {
  Off, Init, Shutdown, Error,
  Halt, Recover, Ready
}
 
- Public Attributes inherited from canopen::Layer
const std::string name
 

Detailed Description

Definition at line 148 of file canopen.h.

Constructor & Destructor Documentation

◆ EMCYHandler()

EMCYHandler::EMCYHandler ( const can::CommInterfaceSharedPtr  interface,
const ObjectStorageSharedPtr  storage 
)

Definition at line 49 of file emcy.cpp.

Member Function Documentation

◆ handleDiag()

void EMCYHandler::handleDiag ( LayerReport report)
privatevirtual

Implements canopen::Layer.

Definition at line 79 of file emcy.cpp.

◆ handleEMCY()

void EMCYHandler::handleEMCY ( const can::Frame msg)
private

Definition at line 43 of file emcy.cpp.

◆ handleHalt()

void EMCYHandler::handleHalt ( LayerStatus status)
privatevirtual

Implements canopen::Layer.

Definition at line 142 of file emcy.cpp.

◆ handleInit()

void EMCYHandler::handleInit ( LayerStatus status)
privatevirtual

Implements canopen::Layer.

Definition at line 119 of file emcy.cpp.

◆ handleRead()

void EMCYHandler::handleRead ( LayerStatus status,
const LayerState current_state 
)
privatevirtual

Implements canopen::Layer.

Definition at line 68 of file emcy.cpp.

◆ handleRecover()

void EMCYHandler::handleRecover ( LayerStatus status)
privatevirtual

Implements canopen::Layer.

Definition at line 137 of file emcy.cpp.

◆ handleShutdown()

void EMCYHandler::handleShutdown ( LayerStatus status)
privatevirtual

Implements canopen::Layer.

Definition at line 140 of file emcy.cpp.

◆ handleWrite()

void EMCYHandler::handleWrite ( LayerStatus status,
const LayerState current_state 
)
privatevirtual

Implements canopen::Layer.

Definition at line 75 of file emcy.cpp.

◆ resetErrors()

void EMCYHandler::resetErrors ( LayerStatus status)

Definition at line 132 of file emcy.cpp.

Member Data Documentation

◆ emcy_listener_

can::FrameListenerConstSharedPtr canopen::EMCYHandler::emcy_listener_
private

Definition at line 152 of file canopen.h.

◆ error_register_

ObjectStorage::Entry<uint8_t> canopen::EMCYHandler::error_register_
private

Definition at line 150 of file canopen.h.

◆ has_error_

std::atomic<bool> canopen::EMCYHandler::has_error_
private

Definition at line 149 of file canopen.h.

◆ num_errors_

ObjectStorage::Entry<uint8_t> canopen::EMCYHandler::num_errors_
private

Definition at line 151 of file canopen.h.

◆ storage_

const ObjectStorageSharedPtr canopen::EMCYHandler::storage_
private

Definition at line 154 of file canopen.h.


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


canopen_master
Author(s): Mathias Lüdtke
autogenerated on Mon Feb 28 2022 23:28:03