5#ifndef OCPP_V16_OCPP_ENUMS_HPP
6#define OCPP_V16_OCPP_ENUMS_HPP
15enum class AuthorizationStatus {
23namespace conversions {
26std::string authorization_status_to_string(AuthorizationStatus e);
30AuthorizationStatus string_to_authorization_status(
const std::string& s);
35std::ostream& operator<<(std::ostream& os,
const AuthorizationStatus& authorization_status);
38enum class RegistrationStatus {
44namespace conversions {
47std::string registration_status_to_string(RegistrationStatus e);
51RegistrationStatus string_to_registration_status(
const std::string& s);
56std::ostream& operator<<(std::ostream& os,
const RegistrationStatus& registration_status);
59enum class CancelReservationStatus {
64namespace conversions {
67std::string cancel_reservation_status_to_string(CancelReservationStatus e);
71CancelReservationStatus string_to_cancel_reservation_status(
const std::string& s);
76std::ostream& operator<<(std::ostream& os,
const CancelReservationStatus& cancel_reservation_status);
79enum class CertificateSignedStatusEnumType {
84namespace conversions {
87std::string certificate_signed_status_enum_type_to_string(CertificateSignedStatusEnumType e);
91CertificateSignedStatusEnumType string_to_certificate_signed_status_enum_type(
const std::string& s);
97std::ostream& operator<<(std::ostream& os,
const CertificateSignedStatusEnumType& certificate_signed_status_enum_type);
100enum class AvailabilityType {
105namespace conversions {
108std::string availability_type_to_string(AvailabilityType e);
112AvailabilityType string_to_availability_type(
const std::string& s);
117std::ostream& operator<<(std::ostream& os,
const AvailabilityType& availability_type);
120enum class AvailabilityStatus {
126namespace conversions {
129std::string availability_status_to_string(AvailabilityStatus e);
133AvailabilityStatus string_to_availability_status(
const std::string& s);
138std::ostream& operator<<(std::ostream& os,
const AvailabilityStatus& availability_status);
141enum class ConfigurationStatus {
148namespace conversions {
151std::string configuration_status_to_string(ConfigurationStatus e);
155ConfigurationStatus string_to_configuration_status(
const std::string& s);
160std::ostream& operator<<(std::ostream& os,
const ConfigurationStatus& configuration_status);
163enum class ClearCacheStatus {
168namespace conversions {
171std::string clear_cache_status_to_string(ClearCacheStatus e);
175ClearCacheStatus string_to_clear_cache_status(
const std::string& s);
180std::ostream& operator<<(std::ostream& os,
const ClearCacheStatus& clear_cache_status);
183enum class ChargingProfilePurposeType {
184 ChargePointMaxProfile,
189namespace conversions {
192std::string charging_profile_purpose_type_to_string(ChargingProfilePurposeType e);
196ChargingProfilePurposeType string_to_charging_profile_purpose_type(
const std::string& s);
201std::ostream& operator<<(std::ostream& os,
const ChargingProfilePurposeType& charging_profile_purpose_type);
204enum class ClearChargingProfileStatus {
209namespace conversions {
212std::string clear_charging_profile_status_to_string(ClearChargingProfileStatus e);
216ClearChargingProfileStatus string_to_clear_charging_profile_status(
const std::string& s);
221std::ostream& operator<<(std::ostream& os,
const ClearChargingProfileStatus& clear_charging_profile_status);
224enum class DataTransferStatus {
231namespace conversions {
234std::string data_transfer_status_to_string(DataTransferStatus e);
238DataTransferStatus string_to_data_transfer_status(
const std::string& s);
243std::ostream& operator<<(std::ostream& os,
const DataTransferStatus& data_transfer_status);
246enum class HashAlgorithmEnumType {
252namespace conversions {
255std::string hash_algorithm_enum_type_to_string(HashAlgorithmEnumType e);
259HashAlgorithmEnumType string_to_hash_algorithm_enum_type(
const std::string& s);
264std::ostream& operator<<(std::ostream& os,
const HashAlgorithmEnumType& hash_algorithm_enum_type);
267enum class DeleteCertificateStatusEnumType {
273namespace conversions {
276std::string delete_certificate_status_enum_type_to_string(DeleteCertificateStatusEnumType e);
280DeleteCertificateStatusEnumType string_to_delete_certificate_status_enum_type(
const std::string& s);
286std::ostream& operator<<(std::ostream& os,
const DeleteCertificateStatusEnumType& delete_certificate_status_enum_type);
289enum class DiagnosticsStatus {
296namespace conversions {
299std::string diagnostics_status_to_string(DiagnosticsStatus e);
303DiagnosticsStatus string_to_diagnostics_status(
const std::string& s);
308std::ostream& operator<<(std::ostream& os,
const DiagnosticsStatus& diagnostics_status);
311enum class MessageTriggerEnumType {
313 LogStatusNotification,
314 FirmwareStatusNotification,
317 SignChargePointCertificate,
321namespace conversions {
324std::string message_trigger_enum_type_to_string(MessageTriggerEnumType e);
328MessageTriggerEnumType string_to_message_trigger_enum_type(
const std::string& s);
333std::ostream& operator<<(std::ostream& os,
const MessageTriggerEnumType& message_trigger_enum_type);
336enum class TriggerMessageStatusEnumType {
342namespace conversions {
345std::string trigger_message_status_enum_type_to_string(TriggerMessageStatusEnumType e);
349TriggerMessageStatusEnumType string_to_trigger_message_status_enum_type(
const std::string& s);
355std::ostream& operator<<(std::ostream& os,
const TriggerMessageStatusEnumType& trigger_message_status_enum_type);
358enum class FirmwareStatus {
368namespace conversions {
371std::string firmware_status_to_string(FirmwareStatus e);
375FirmwareStatus string_to_firmware_status(
const std::string& s);
380std::ostream& operator<<(std::ostream& os,
const FirmwareStatus& firmware_status);
383enum class ChargingRateUnit {
388namespace conversions {
391std::string charging_rate_unit_to_string(ChargingRateUnit e);
395ChargingRateUnit string_to_charging_rate_unit(
const std::string& s);
400std::ostream& operator<<(std::ostream& os,
const ChargingRateUnit& charging_rate_unit);
403enum class GetCompositeScheduleStatus {
408namespace conversions {
411std::string get_composite_schedule_status_to_string(GetCompositeScheduleStatus e);
415GetCompositeScheduleStatus string_to_get_composite_schedule_status(
const std::string& s);
420std::ostream& operator<<(std::ostream& os,
const GetCompositeScheduleStatus& get_composite_schedule_status);
423enum class CertificateUseEnumType {
424 CentralSystemRootCertificate,
425 ManufacturerRootCertificate,
428namespace conversions {
431std::string certificate_use_enum_type_to_string(CertificateUseEnumType e);
435CertificateUseEnumType string_to_certificate_use_enum_type(
const std::string& s);
440std::ostream& operator<<(std::ostream& os,
const CertificateUseEnumType& certificate_use_enum_type);
443enum class GetInstalledCertificateStatusEnumType {
448namespace conversions {
451std::string get_installed_certificate_status_enum_type_to_string(GetInstalledCertificateStatusEnumType e);
455GetInstalledCertificateStatusEnumType string_to_get_installed_certificate_status_enum_type(
const std::string& s);
461std::ostream& operator<<(std::ostream& os,
462 const GetInstalledCertificateStatusEnumType& get_installed_certificate_status_enum_type);
465enum class LogEnumType {
470namespace conversions {
473std::string log_enum_type_to_string(LogEnumType e);
477LogEnumType string_to_log_enum_type(
const std::string& s);
482std::ostream& operator<<(std::ostream& os,
const LogEnumType& log_enum_type);
485enum class LogStatusEnumType {
491namespace conversions {
494std::string log_status_enum_type_to_string(LogStatusEnumType e);
498LogStatusEnumType string_to_log_status_enum_type(
const std::string& s);
503std::ostream& operator<<(std::ostream& os,
const LogStatusEnumType& log_status_enum_type);
506enum class InstallCertificateStatusEnumType {
512namespace conversions {
515std::string install_certificate_status_enum_type_to_string(InstallCertificateStatusEnumType e);
519InstallCertificateStatusEnumType string_to_install_certificate_status_enum_type(
const std::string& s);
525std::ostream& operator<<(std::ostream& os,
526 const InstallCertificateStatusEnumType& install_certificate_status_enum_type);
529enum class UploadLogStatusEnumType {
532 NotSupportedOperation,
539namespace conversions {
542std::string upload_log_status_enum_type_to_string(UploadLogStatusEnumType e);
546UploadLogStatusEnumType string_to_upload_log_status_enum_type(
const std::string& s);
551std::ostream& operator<<(std::ostream& os,
const UploadLogStatusEnumType& upload_log_status_enum_type);
554enum class ReadingContext {
565namespace conversions {
568std::string reading_context_to_string(ReadingContext e);
572ReadingContext string_to_reading_context(
const std::string& s);
577std::ostream& operator<<(std::ostream& os,
const ReadingContext& reading_context);
580enum class ValueFormat {
585namespace conversions {
588std::string value_format_to_string(ValueFormat e);
592ValueFormat string_to_value_format(
const std::string& s);
597std::ostream& operator<<(std::ostream& os,
const ValueFormat& value_format);
600enum class Measurand {
601 Energy_Active_Export_Register,
602 Energy_Active_Import_Register,
603 Energy_Reactive_Export_Register,
604 Energy_Reactive_Import_Register,
605 Energy_Active_Export_Interval,
606 Energy_Active_Import_Interval,
607 Energy_Reactive_Export_Interval,
608 Energy_Reactive_Import_Interval,
612 Power_Reactive_Export,
613 Power_Reactive_Import,
625namespace conversions {
628std::string measurand_to_string(Measurand e);
632Measurand string_to_measurand(
const std::string& s);
637std::ostream& operator<<(std::ostream& os,
const Measurand& measurand);
653namespace conversions {
656std::string phase_to_string(Phase e);
660Phase string_to_phase(
const std::string& s);
665std::ostream& operator<<(std::ostream& os,
const Phase& phase);
676namespace conversions {
679std::string location_to_string(Location e);
683Location string_to_location(
const std::string& s);
688std::ostream& operator<<(std::ostream& os,
const Location& location);
691enum class UnitOfMeasure {
711namespace conversions {
714std::string unit_of_measure_to_string(UnitOfMeasure e);
718UnitOfMeasure string_to_unit_of_measure(
const std::string& s);
723std::ostream& operator<<(std::ostream& os,
const UnitOfMeasure& unit_of_measure);
726enum class ChargingProfileKindType {
732namespace conversions {
735std::string charging_profile_kind_type_to_string(ChargingProfileKindType e);
739ChargingProfileKindType string_to_charging_profile_kind_type(
const std::string& s);
744std::ostream& operator<<(std::ostream& os,
const ChargingProfileKindType& charging_profile_kind_type);
747enum class RecurrencyKindType {
752namespace conversions {
755std::string recurrency_kind_type_to_string(RecurrencyKindType e);
759RecurrencyKindType string_to_recurrency_kind_type(
const std::string& s);
764std::ostream& operator<<(std::ostream& os,
const RecurrencyKindType& recurrency_kind_type);
767enum class RemoteStartStopStatus {
772namespace conversions {
775std::string remote_start_stop_status_to_string(RemoteStartStopStatus e);
779RemoteStartStopStatus string_to_remote_start_stop_status(
const std::string& s);
784std::ostream& operator<<(std::ostream& os,
const RemoteStartStopStatus& remote_start_stop_status);
787enum class ReservationStatus {
795namespace conversions {
798std::string reservation_status_to_string(ReservationStatus e);
802ReservationStatus string_to_reservation_status(
const std::string& s);
807std::ostream& operator<<(std::ostream& os,
const ReservationStatus& reservation_status);
810enum class ResetType {
815namespace conversions {
818std::string reset_type_to_string(ResetType e);
822ResetType string_to_reset_type(
const std::string& s);
827std::ostream& operator<<(std::ostream& os,
const ResetType& reset_type);
830enum class ResetStatus {
835namespace conversions {
838std::string reset_status_to_string(ResetStatus e);
842ResetStatus string_to_reset_status(
const std::string& s);
847std::ostream& operator<<(std::ostream& os,
const ResetStatus& reset_status);
850enum class UpdateType {
855namespace conversions {
858std::string update_type_to_string(UpdateType e);
862UpdateType string_to_update_type(
const std::string& s);
867std::ostream& operator<<(std::ostream& os,
const UpdateType& update_type);
870enum class UpdateStatus {
877namespace conversions {
880std::string update_status_to_string(UpdateStatus e);
884UpdateStatus string_to_update_status(
const std::string& s);
889std::ostream& operator<<(std::ostream& os,
const UpdateStatus& update_status);
892enum class ChargingProfileStatus {
898namespace conversions {
901std::string charging_profile_status_to_string(ChargingProfileStatus e);
905ChargingProfileStatus string_to_charging_profile_status(
const std::string& s);
910std::ostream& operator<<(std::ostream& os,
const ChargingProfileStatus& charging_profile_status);
913enum class GenericStatusEnumType {
918namespace conversions {
921std::string generic_status_enum_type_to_string(GenericStatusEnumType e);
925GenericStatusEnumType string_to_generic_status_enum_type(
const std::string& s);
930std::ostream& operator<<(std::ostream& os,
const GenericStatusEnumType& generic_status_enum_type);
933enum class FirmwareStatusEnumType {
945 InstallVerificationFailed,
950namespace conversions {
953std::string firmware_status_enum_type_to_string(FirmwareStatusEnumType e);
957FirmwareStatusEnumType string_to_firmware_status_enum_type(
const std::string& s);
962std::ostream& operator<<(std::ostream& os,
const FirmwareStatusEnumType& firmware_status_enum_type);
965enum class UpdateFirmwareStatusEnumType {
973namespace conversions {
976std::string update_firmware_status_enum_type_to_string(UpdateFirmwareStatusEnumType e);
980UpdateFirmwareStatusEnumType string_to_update_firmware_status_enum_type(
const std::string& s);
986std::ostream& operator<<(std::ostream& os,
const UpdateFirmwareStatusEnumType& update_firmware_status_enum_type);
989enum class ChargePointErrorCode {
990 ConnectorLockFailure,
991 EVCommunicationError,
1008namespace conversions {
1011std::string charge_point_error_code_to_string(ChargePointErrorCode e);
1015ChargePointErrorCode string_to_charge_point_error_code(
const std::string& s);
1020std::ostream& operator<<(std::ostream& os,
const ChargePointErrorCode& charge_point_error_code);
1023enum class ChargePointStatus {
1035namespace conversions {
1038std::string charge_point_status_to_string(ChargePointStatus e);
1042ChargePointStatus string_to_charge_point_status(
const std::string& s);
1047std::ostream& operator<<(std::ostream& os,
const ChargePointStatus& charge_point_status);
1064namespace conversions {
1067std::string reason_to_string(Reason e);
1071Reason string_to_reason(
const std::string& s);
1076std::ostream& operator<<(std::ostream& os,
const Reason& reason);
1079enum class MessageTrigger {
1081 DiagnosticsStatusNotification,
1082 FirmwareStatusNotification,
1088namespace conversions {
1091std::string message_trigger_to_string(MessageTrigger e);
1095MessageTrigger string_to_message_trigger(
const std::string& s);
1100std::ostream& operator<<(std::ostream& os,
const MessageTrigger& message_trigger);
1103enum class TriggerMessageStatus {
1109namespace conversions {
1112std::string trigger_message_status_to_string(TriggerMessageStatus e);
1116TriggerMessageStatus string_to_trigger_message_status(
const std::string& s);
1121std::ostream& operator<<(std::ostream& os,
const TriggerMessageStatus& trigger_message_status);
1124enum class UnlockStatus {
1130namespace conversions {
1133std::string unlock_status_to_string(UnlockStatus e);
1137UnlockStatus string_to_unlock_status(
const std::string& s);
1142std::ostream& operator<<(std::ostream& os,
const UnlockStatus& unlock_status);