ocpp 0.24.1
A C++ implementation of the Open Charge Point Protocol
Public Member Functions | List of all members
ocpp::v2::ComponentStateManagerInterface Class Referenceabstract
Inheritance diagram for ocpp::v2::ComponentStateManagerInterface:
ocpp::v2::ComponentStateManager

Public Member Functions

virtual void set_cs_effective_availability_changed_callback (const std::function< void(const OperationalStatusEnum new_status)> &callback)=0
 Set a callback to be called when the effective Operative/Inoperative state of the CS changes. More...
 
virtual void set_evse_effective_availability_changed_callback (const std::function< void(const int32_t evse_id, const OperationalStatusEnum new_status)> &callback)=0
 Set a callback to be called when the effective Operative/Inoperative state of an EVSE changes. More...
 
virtual void set_connector_effective_availability_changed_callback (const std::function< void(const int32_t evse_id, const int32_t connector_id, const OperationalStatusEnum new_status)> &callback)=0
 Set a callback to be called when the effective Operative/Inoperative state of a connector changes. More...
 
virtual OperationalStatusEnum get_cs_individual_operational_status ()=0
 Get the individual status (Operative/Inoperative) of the CS, as set by the CSMS. More...
 
virtual OperationalStatusEnum get_evse_individual_operational_status (int32_t evse_id)=0
 Get the individual status (Operative/Inoperative) of an EVSE, as set by the CSMS Note: This is not the same as the effective status. The EVSE might be effectively Inoperative if the CS is Inoperative. More...
 
virtual OperationalStatusEnum get_connector_individual_operational_status (int32_t evse_id, int32_t connector_id)=0
 Get the individual status (Operative/Inoperative) of a connector, as set by the CSMS Note: This is not the same as the effective status. The connector might be effectively Inoperative if its EVSE or the CS is Inoperative. More...
 
virtual OperationalStatusEnum get_cs_persisted_operational_status ()=0
 Get the individual status (Operative/Inoperative) of the CS, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made. More...
 
virtual OperationalStatusEnum get_evse_persisted_operational_status (int32_t evse_id)=0
 Get the individual status (Operative/Inoperative) of an EVSE, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made. More...
 
virtual OperationalStatusEnum get_connector_persisted_operational_status (int32_t evse_id, int32_t connector_id)=0
 Get the individual status (Operative/Inoperative) of a connector, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made. More...
 
virtual void set_cs_individual_operational_status (OperationalStatusEnum new_status, bool persist)=0
 Set the individual status (Operative/Inoperative) of the CS. More...
 
virtual void set_evse_individual_operational_status (int32_t evse_id, OperationalStatusEnum new_status, bool persist)=0
 Set the individual status (Operative/Inoperative) of an EVSE Note: This is not the same as the effective status. The EVSE might be effectively Inoperative if the CS is Inoperative. More...
 
virtual void set_connector_individual_operational_status (int32_t evse_id, int32_t connector_id, OperationalStatusEnum new_status, bool persist)=0
 Set the individual status (Operative/Inoperative) of a connector Note: This is not the same as the effective status. The connector might be effectively Inoperative if its EVSE or the CS is Inoperative. More...
 
virtual OperationalStatusEnum get_evse_effective_operational_status (int32_t evse_id)=0
 Get the effective Operative/Inoperative status of an EVSE This is computed from the EVSE's and the CS's individual statuses. More...
 
virtual OperationalStatusEnum get_connector_effective_operational_status (int32_t evse_id, int32_t connector_id)=0
 Get the effective Operative/Inoperative status of a connector. This is computed from the connector's, the EVSE's, and the CS's individual statuses. More...
 
virtual ConnectorStatusEnum get_connector_effective_status (int32_t evse_id, int32_t connector_id)=0
 Get the effective Available/Unavailable/Occupied/Faulted/Reserved status of a connector. If the EVSE or the CS is Inoperative, the connector will be effectively Unavailable. More...
 
virtual void set_connector_occupied (int32_t evse_id, int32_t connector_id, bool is_occupied)=0
 Update the state of the connector when plugged in or out. More...
 
virtual void set_connector_reserved (int32_t evse_id, int32_t connector_id, bool is_reserved)=0
 Update the state of the connector when reservations are made or expire. More...
 
virtual void set_connector_faulted (int32_t evse_id, int32_t connector_id, bool is_faulted)=0
 Update the state of the connector when errors are raised and cleared. More...
 
virtual void set_connector_unavailable (int32_t evse_id, int32_t connector_id, bool is_unavailable)=0
 Update the state of the connector when unavailable or enabled. More...
 
virtual void trigger_all_effective_availability_changed_callbacks ()=0
 Call the {cs, evse, connector}_effective_availability_changed_callback callback once for every component. This is usually only done once on boot to notify the rest of the system what the state manager expects the operative state (Operative/Inoperative) of the CS, EVSEs, and connectors to be. More...
 
virtual void send_status_notification_all_connectors ()=0
 Call the send_connector_status_notification_callback once for every connector. This is usually done on boot, and on reconnect after the station has been offline for a long time. More...
 
virtual void send_status_notification_changed_connectors ()=0
 Call the send_connector_status_notification_callback once for every connector whose state has changed since it was last reported with a successful send_connector_status_notification_callback. This is usually done when the station has been offline for short time and comes back online. More...
 
virtual void send_status_notification_single_connector (int32_t evse_id, int32_t connector_id)=0
 Call the send_connector_status_notification_callback for a single connector. This is usually done when the CSMS explicitly sends a TriggerMessage to send a StatusNotification. More...
 

Member Function Documentation

◆ get_connector_effective_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_connector_effective_operational_status ( int32_t  evse_id,
int32_t  connector_id 
)
pure virtual

Get the effective Operative/Inoperative status of a connector. This is computed from the connector's, the EVSE's, and the CS's individual statuses.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_connector_effective_status()

virtual ConnectorStatusEnum ocpp::v2::ComponentStateManagerInterface::get_connector_effective_status ( int32_t  evse_id,
int32_t  connector_id 
)
pure virtual

Get the effective Available/Unavailable/Occupied/Faulted/Reserved status of a connector. If the EVSE or the CS is Inoperative, the connector will be effectively Unavailable.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_connector_individual_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_connector_individual_operational_status ( int32_t  evse_id,
int32_t  connector_id 
)
pure virtual

Get the individual status (Operative/Inoperative) of a connector, as set by the CSMS Note: This is not the same as the effective status. The connector might be effectively Inoperative if its EVSE or the CS is Inoperative.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_connector_persisted_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_connector_persisted_operational_status ( int32_t  evse_id,
int32_t  connector_id 
)
pure virtual

Get the individual status (Operative/Inoperative) of a connector, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_cs_individual_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_cs_individual_operational_status ( )
pure virtual

Get the individual status (Operative/Inoperative) of the CS, as set by the CSMS.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_cs_persisted_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_cs_persisted_operational_status ( )
pure virtual

Get the individual status (Operative/Inoperative) of the CS, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_evse_effective_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_evse_effective_operational_status ( int32_t  evse_id)
pure virtual

Get the effective Operative/Inoperative status of an EVSE This is computed from the EVSE's and the CS's individual statuses.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_evse_individual_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_evse_individual_operational_status ( int32_t  evse_id)
pure virtual

Get the individual status (Operative/Inoperative) of an EVSE, as set by the CSMS Note: This is not the same as the effective status. The EVSE might be effectively Inoperative if the CS is Inoperative.

Implemented in ocpp::v2::ComponentStateManager.

◆ get_evse_persisted_operational_status()

virtual OperationalStatusEnum ocpp::v2::ComponentStateManagerInterface::get_evse_persisted_operational_status ( int32_t  evse_id)
pure virtual

Get the individual status (Operative/Inoperative) of an EVSE, as persisted in the database This status is restored after reboot, and differs from the individual status if non-persistent status changes were made.

Implemented in ocpp::v2::ComponentStateManager.

◆ send_status_notification_all_connectors()

virtual void ocpp::v2::ComponentStateManagerInterface::send_status_notification_all_connectors ( )
pure virtual

Call the send_connector_status_notification_callback once for every connector. This is usually done on boot, and on reconnect after the station has been offline for a long time.

Implemented in ocpp::v2::ComponentStateManager.

◆ send_status_notification_changed_connectors()

virtual void ocpp::v2::ComponentStateManagerInterface::send_status_notification_changed_connectors ( )
pure virtual

Call the send_connector_status_notification_callback once for every connector whose state has changed since it was last reported with a successful send_connector_status_notification_callback. This is usually done when the station has been offline for short time and comes back online.

Implemented in ocpp::v2::ComponentStateManager.

◆ send_status_notification_single_connector()

virtual void ocpp::v2::ComponentStateManagerInterface::send_status_notification_single_connector ( int32_t  evse_id,
int32_t  connector_id 
)
pure virtual

Call the send_connector_status_notification_callback for a single connector. This is usually done when the CSMS explicitly sends a TriggerMessage to send a StatusNotification.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_effective_availability_changed_callback()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_effective_availability_changed_callback ( const std::function< void(const int32_t evse_id, const int32_t connector_id, const OperationalStatusEnum new_status)> &  callback)
pure virtual

Set a callback to be called when the effective Operative/Inoperative state of a connector changes.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_faulted()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_faulted ( int32_t  evse_id,
int32_t  connector_id,
bool  is_faulted 
)
pure virtual

Update the state of the connector when errors are raised and cleared.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_individual_operational_status()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_individual_operational_status ( int32_t  evse_id,
int32_t  connector_id,
OperationalStatusEnum  new_status,
bool  persist 
)
pure virtual

Set the individual status (Operative/Inoperative) of a connector Note: This is not the same as the effective status. The connector might be effectively Inoperative if its EVSE or the CS is Inoperative.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_occupied()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_occupied ( int32_t  evse_id,
int32_t  connector_id,
bool  is_occupied 
)
pure virtual

Update the state of the connector when plugged in or out.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_reserved()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_reserved ( int32_t  evse_id,
int32_t  connector_id,
bool  is_reserved 
)
pure virtual

Update the state of the connector when reservations are made or expire.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_connector_unavailable()

virtual void ocpp::v2::ComponentStateManagerInterface::set_connector_unavailable ( int32_t  evse_id,
int32_t  connector_id,
bool  is_unavailable 
)
pure virtual

Update the state of the connector when unavailable or enabled.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_cs_effective_availability_changed_callback()

virtual void ocpp::v2::ComponentStateManagerInterface::set_cs_effective_availability_changed_callback ( const std::function< void(const OperationalStatusEnum new_status)> &  callback)
pure virtual

Set a callback to be called when the effective Operative/Inoperative state of the CS changes.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_cs_individual_operational_status()

virtual void ocpp::v2::ComponentStateManagerInterface::set_cs_individual_operational_status ( OperationalStatusEnum  new_status,
bool  persist 
)
pure virtual

Set the individual status (Operative/Inoperative) of the CS.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_evse_effective_availability_changed_callback()

virtual void ocpp::v2::ComponentStateManagerInterface::set_evse_effective_availability_changed_callback ( const std::function< void(const int32_t evse_id, const OperationalStatusEnum new_status)> &  callback)
pure virtual

Set a callback to be called when the effective Operative/Inoperative state of an EVSE changes.

Implemented in ocpp::v2::ComponentStateManager.

◆ set_evse_individual_operational_status()

virtual void ocpp::v2::ComponentStateManagerInterface::set_evse_individual_operational_status ( int32_t  evse_id,
OperationalStatusEnum  new_status,
bool  persist 
)
pure virtual

Set the individual status (Operative/Inoperative) of an EVSE Note: This is not the same as the effective status. The EVSE might be effectively Inoperative if the CS is Inoperative.

Implemented in ocpp::v2::ComponentStateManager.

◆ trigger_all_effective_availability_changed_callbacks()

virtual void ocpp::v2::ComponentStateManagerInterface::trigger_all_effective_availability_changed_callbacks ( )
pure virtual

Call the {cs, evse, connector}_effective_availability_changed_callback callback once for every component. This is usually only done once on boot to notify the rest of the system what the state manager expects the operative state (Operative/Inoperative) of the CS, EVSEs, and connectors to be.

Implemented in ocpp::v2::ComponentStateManager.


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