defmodule BACnet.Protocol.Constants.AbortRejectError do @moduledoc false # Can be extended through env :bacstack, :additional_abort_reason + :additional_error_class # + :additional_error_code + :additional_reject_reason use ConstEnum, exception: BACnet.Protocol.Constants.ConstantError # Abort defconst(:abort_reason, :other, 0x00) defconst(:abort_reason, :buffer_overflow, 0x01) defconst(:abort_reason, :invalid_apdu_in_this_state, 0x02) defconst(:abort_reason, :preempted_by_higher_priority_task, 0x03) defconst(:abort_reason, :segmentation_not_supported, 0x04) defconst(:abort_reason, :security_error, 0x05) defconst(:abort_reason, :insufficient_security, 0x06) defconst(:abort_reason, :window_size_out_of_range, 0x07) defconst(:abort_reason, :application_exceeded_reply_time, 0x08) defconst(:abort_reason, :out_of_resources, 0x09) defconst(:abort_reason, :tsm_timeout, 0x0A) defconst(:abort_reason, :apdu_too_long, 0x0B) defconst_extend_env( :abort_reason, :bacstack, :additional_abort_reason, &(is_atom(&1) and is_integer(&2) and &2 >= 0) ) # Error defconst(:error_class, :device, 0x00) defconst(:error_class, :object, 0x01) defconst(:error_class, :property, 0x02) defconst(:error_class, :resources, 0x03) defconst(:error_class, :security, 0x04) defconst(:error_class, :services, 0x05) defconst(:error_class, :vt, 0x06) defconst(:error_class, :communication, 0x07) defconst_extend_env( :error_class, :bacstack, :additional_error_class, &(is_atom(&1) and is_integer(&2) and &2 >= 0) ) defconst(:error_code, :other, 0x00) defconst(:error_code, :configuration_in_progress, 0x02) defconst(:error_code, :device_busy, 0x03) defconst(:error_code, :dynamic_creation_not_supported, 0x04) defconst(:error_code, :file_access_denied, 0x05) defconst(:error_code, :inconsistent_parameters, 0x07) defconst(:error_code, :inconsistent_selection_criterion, 0x08) defconst(:error_code, :invalid_datatype, 0x09) defconst(:error_code, :invalid_file_access_method, 0x0A) defconst(:error_code, :invalid_file_start_position, 0x0B) defconst(:error_code, :invalid_parameter_data_type, 0x0D) defconst(:error_code, :invalid_timestamp, 0x0E) defconst(:error_code, :missing_required_parameter, 0x10) defconst(:error_code, :no_objects_of_specified_type, 0x11) defconst(:error_code, :no_space_for_object, 0x12) defconst(:error_code, :no_space_to_add_list_element, 0x13) defconst(:error_code, :no_space_to_write_property, 0x14) defconst(:error_code, :no_vt_sessions_available, 0x15) defconst(:error_code, :property_is_not_a_list, 0x16) defconst(:error_code, :object_deletion_not_permitted, 0x17) defconst(:error_code, :object_identifier_already_exists, 0x18) defconst(:error_code, :operational_problem, 0x19) defconst(:error_code, :password_failure, 0x1A) defconst(:error_code, :read_access_denied, 0x1B) defconst(:error_code, :service_request_denied, 0x1D) defconst(:error_code, :timeout, 0x1E) defconst(:error_code, :unknown_object, 0x1F) defconst(:error_code, :unknown_property, 0x20) defconst(:error_code, :unknown_vt_class, 0x22) defconst(:error_code, :unknown_vt_session, 0x23) defconst(:error_code, :unsupported_object_type, 0x24) defconst(:error_code, :value_out_of_range, 0x25) defconst(:error_code, :vt_session_already_closed, 0x26) defconst(:error_code, :vt_session_termination_failure, 0x27) defconst(:error_code, :write_access_denied, 0x28) defconst(:error_code, :character_set_not_supported, 0x29) defconst(:error_code, :invalid_array_index, 0x2A) defconst(:error_code, :cov_subscription_failed, 0x2B) defconst(:error_code, :not_cov_property, 0x2C) defconst(:error_code, :optional_functionality_not_supported, 0x2D) defconst(:error_code, :invalid_configuration_data, 0x2E) defconst(:error_code, :datatype_not_supported, 0x2F) defconst(:error_code, :duplicate_name, 0x30) defconst(:error_code, :duplicate_object_id, 0x31) defconst(:error_code, :property_is_not_an_array, 0x32) defconst(:error_code, :abort_buffer_overflow, 0x33) defconst(:error_code, :abort_invalid_apdu_in_this_state, 0x34) defconst(:error_code, :abort_preempted_by_higher_priority_task, 0x35) defconst(:error_code, :abort_segmentation_not_supported, 0x36) defconst(:error_code, :abort_proprietary, 0x37) defconst(:error_code, :abort_other, 0x38) defconst(:error_code, :invalid_tag, 0x39) defconst(:error_code, :network_down, 0x3A) defconst(:error_code, :reject_buffer_overflow, 0x3B) defconst(:error_code, :reject_inconsistent_parameters, 0x3C) defconst(:error_code, :reject_invalid_parameter_data_type, 0x3D) defconst(:error_code, :reject_invalid_tag, 0x3E) defconst(:error_code, :reject_missing_required_parameter, 0x3F) defconst(:error_code, :reject_parameter_out_of_range, 0x40) defconst(:error_code, :reject_too_many_arguments, 0x41) defconst(:error_code, :reject_undefined_enumeration, 0x42) defconst(:error_code, :reject_unrecognized_service, 0x43) defconst(:error_code, :reject_proprietary, 0x44) defconst(:error_code, :reject_other, 0x45) defconst(:error_code, :unknown_device, 0x46) defconst(:error_code, :unknown_route, 0x47) defconst(:error_code, :value_not_initialized, 0x48) defconst(:error_code, :invalid_event_state, 0x49) defconst(:error_code, :no_alarm_configured, 0x4A) defconst(:error_code, :log_buffer_full, 0x4B) defconst(:error_code, :logged_value_purged, 0x4C) defconst(:error_code, :no_property_specified, 0x4D) defconst(:error_code, :not_configured_for_triggered_logging, 0x4E) defconst(:error_code, :unknown_subscription, 0x4F) defconst(:error_code, :parameter_out_of_range, 0x50) defconst(:error_code, :list_element_not_found, 0x51) defconst(:error_code, :busy, 0x52) defconst(:error_code, :communication_disabled, 0x53) defconst(:error_code, :success, 0x54) defconst(:error_code, :access_denied, 0x55) defconst(:error_code, :bad_destination_address, 0x56) defconst(:error_code, :bad_destination_device_id, 0x57) defconst(:error_code, :bad_signature, 0x58) defconst(:error_code, :bad_source_address, 0x59) defconst(:error_code, :bad_timestamp, 0x5A) defconst(:error_code, :cannot_use_key, 0x5B) defconst(:error_code, :cannot_verify_message_id, 0x5C) defconst(:error_code, :correct_key_revision, 0x5D) defconst(:error_code, :destination_device_id_required, 0x5E) defconst(:error_code, :duplicate_message, 0x5F) defconst(:error_code, :encryption_not_configured, 0x60) defconst(:error_code, :encryption_required, 0x61) defconst(:error_code, :incorrect_key, 0x62) defconst(:error_code, :invalid_key_data, 0x63) defconst(:error_code, :key_update_in_progress, 0x64) defconst(:error_code, :malformed_message, 0x65) defconst(:error_code, :not_key_server, 0x66) defconst(:error_code, :security_not_configured, 0x67) defconst(:error_code, :source_security_required, 0x68) defconst(:error_code, :too_many_keys, 0x69) defconst(:error_code, :unknown_authentication_type, 0x6A) defconst(:error_code, :unknown_key, 0x6B) defconst(:error_code, :unknown_key_revision, 0x6C) defconst(:error_code, :unknown_source_message, 0x6D) defconst(:error_code, :not_router_to_dnet, 0x6E) defconst(:error_code, :router_busy, 0x6F) defconst(:error_code, :unknown_network_message, 0x70) defconst(:error_code, :message_too_long, 0x71) defconst(:error_code, :security_error, 0x72) defconst(:error_code, :addressing_error, 0x73) defconst(:error_code, :write_bdt_failed, 0x74) defconst(:error_code, :read_bdt_failed, 0x75) defconst(:error_code, :register_foreign_device_failed, 0x76) defconst(:error_code, :read_fdt_failed, 0x77) defconst(:error_code, :delete_fdt_entry_failed, 0x78) defconst(:error_code, :distribute_broadcast_failed, 0x79) defconst(:error_code, :unknown_file_size, 0x7A) defconst(:error_code, :abort_apdu_too_long, 0x7B) defconst(:error_code, :abort_application_exceeded_reply_time, 0x7C) defconst(:error_code, :abort_out_of_resources, 0x7D) defconst(:error_code, :abort_tsm_timeout, 0x7E) defconst(:error_code, :abort_window_size_out_of_range, 0x7F) defconst(:error_code, :file_full, 0x80) defconst(:error_code, :inconsistent_configuration, 0x81) defconst(:error_code, :inconsistent_object_type, 0x82) defconst(:error_code, :internal_error, 0x83) defconst(:error_code, :not_configured, 0x84) defconst(:error_code, :out_of_memory, 0x85) defconst(:error_code, :value_too_long, 0x86) defconst(:error_code, :abort_insufficient_security, 0x87) defconst(:error_code, :abort_security_error, 0x88) defconst(:error_code, :duplicate_entry, 0x89) defconst(:error_code, :invalid_value_in_this_state, 0x8A) defconst_extend_env( :error_code, :bacstack, :additional_error_code, &(is_atom(&1) and is_integer(&2) and &2 >= 0) ) # Reject defconst(:reject_reason, :other, 0x00) defconst(:reject_reason, :buffer_overflow, 0x01) defconst(:reject_reason, :inconsistent_parameters, 0x02) defconst(:reject_reason, :invalid_parameter_data_type, 0x03) defconst(:reject_reason, :invalid_tag, 0x04) defconst(:reject_reason, :missing_required_parameter, 0x05) defconst(:reject_reason, :parameter_out_of_range, 0x06) defconst(:reject_reason, :too_many_arguments, 0x07) defconst(:reject_reason, :undefined_enumeration, 0x08) defconst(:reject_reason, :unrecognized_service, 0x09) defconst_extend_env( :reject_reason, :bacstack, :additional_reject_reason, &(is_atom(&1) and is_integer(&2) and &2 >= 0) ) end