// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: lib/config/common.proto
// Protobuf C++ Version: 7.36.0

#ifndef lib_2fconfig_2fcommon_2eproto_2epb_2eh
#define lib_2fconfig_2fcommon_2eproto_2epb_2eh

#include <limits>
#include <string>
#include <type_traits>
#include <utility>

// clang-format off
#include "google/protobuf/runtime_version.h"
#if PROTOBUF_VERSION != 7036000
#error "Protobuf C++ gencode is built with an incompatible version of"
#error "Protobuf C++ headers/runtime. See"
#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
#endif
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/arena.h"
#include "google/protobuf/arenastring.h"
#include "google/protobuf/generated_message_tctable_decl.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/metadata_lite.h"
#include "google/protobuf/generated_message_reflection.h"
#include "google/protobuf/repeated_field.h"  // IWYU pragma: export
#include "google/protobuf/extension_set.h"  // IWYU pragma: export
#include "google/protobuf/generated_enum_reflection.h"
#include "google/protobuf/descriptor.pb.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"

#define PROTOBUF_INTERNAL_EXPORT_lib_2fconfig_2fcommon_2eproto

// Internal implementation detail -- do not use these members.
struct TableStruct_lib_2fconfig_2fcommon_2eproto {
  static const ::uint32_t offsets[];
};
extern "C" {
extern const ::google::protobuf::internal::DescriptorTable descriptor_table_lib_2fconfig_2fcommon_2eproto;
}  // extern "C"
enum FluxSourceSinkType : int;
extern const uint32_t FluxSourceSinkType_internal_data_[];
enum ImageReaderWriterType : int;
extern const uint32_t ImageReaderWriterType_internal_data_[];
enum IndexMode : int;
extern const uint32_t IndexMode_internal_data_[];
namespace google {
namespace protobuf {
template <>
internal::EnumTraitsT<::FluxSourceSinkType_internal_data_>
    internal::EnumTraitsImpl::value<::FluxSourceSinkType>;
template <>
internal::EnumTraitsT<::ImageReaderWriterType_internal_data_>
    internal::EnumTraitsImpl::value<::ImageReaderWriterType>;
template <>
internal::EnumTraitsT<::IndexMode_internal_data_>
    internal::EnumTraitsImpl::value<::IndexMode>;
}  // namespace protobuf
}  // namespace google

enum IndexMode : int {
  INDEXMODE_DRIVE = 0,
  INDEXMODE_300 = 1,
  INDEXMODE_360 = 2,
};

extern const uint32_t IndexMode_internal_data_[];
inline constexpr IndexMode IndexMode_MIN =
    static_cast<IndexMode>(0);
inline constexpr IndexMode IndexMode_MAX =
    static_cast<IndexMode>(2);
[[nodiscard]] inline bool IndexMode_IsValid(int value) {
  return 0 <= value && value <= 2;
}
inline constexpr int IndexMode_ARRAYSIZE = 2 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
IndexMode_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(IndexMode) {
  return IndexMode_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& IndexMode_Name(T value) {
  static_assert(::std::is_same<T, IndexMode>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to IndexMode_Name().");
  return IndexMode_Name(static_cast<IndexMode>(value));
}
template <>
[[nodiscard]] inline const ::std::string& IndexMode_Name(IndexMode value) {
  return ::google::protobuf::internal::NameOfDenseEnum<IndexMode_descriptor, 0, 2>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool IndexMode_Parse(
    ::absl::string_view name, IndexMode* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<IndexMode>(IndexMode_descriptor(), name,
                                           value);
}
enum FluxSourceSinkType : int {
  FLUXTYPE_NOT_SET = 0,
  FLUXTYPE_A2R = 1,
  FLUXTYPE_AU = 2,
  FLUXTYPE_CWF = 3,
  FLUXTYPE_DRIVE = 4,
  FLUXTYPE_ERASE = 5,
  FLUXTYPE_FLUX = 6,
  FLUXTYPE_FLX = 7,
  FLUXTYPE_KRYOFLUX = 8,
  FLUXTYPE_SCP = 9,
  FLUXTYPE_TEST_PATTERN = 10,
  FLUXTYPE_VCD = 11,
  FLUXTYPE_DMK = 12,
};

extern const uint32_t FluxSourceSinkType_internal_data_[];
inline constexpr FluxSourceSinkType FluxSourceSinkType_MIN =
    static_cast<FluxSourceSinkType>(0);
inline constexpr FluxSourceSinkType FluxSourceSinkType_MAX =
    static_cast<FluxSourceSinkType>(12);
[[nodiscard]] inline bool FluxSourceSinkType_IsValid(int value) {
  return 0 <= value && value <= 12;
}
inline constexpr int FluxSourceSinkType_ARRAYSIZE = 12 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
FluxSourceSinkType_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(FluxSourceSinkType) {
  return FluxSourceSinkType_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& FluxSourceSinkType_Name(T value) {
  static_assert(::std::is_same<T, FluxSourceSinkType>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to FluxSourceSinkType_Name().");
  return FluxSourceSinkType_Name(static_cast<FluxSourceSinkType>(value));
}
template <>
[[nodiscard]] inline const ::std::string& FluxSourceSinkType_Name(FluxSourceSinkType value) {
  return ::google::protobuf::internal::NameOfDenseEnum<FluxSourceSinkType_descriptor, 0, 12>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool FluxSourceSinkType_Parse(
    ::absl::string_view name, FluxSourceSinkType* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<FluxSourceSinkType>(FluxSourceSinkType_descriptor(), name,
                                           value);
}
enum ImageReaderWriterType : int {
  IMAGETYPE_NOT_SET = 0,
  IMAGETYPE_D64 = 1,
  IMAGETYPE_D88 = 2,
  IMAGETYPE_DIM = 3,
  IMAGETYPE_DISKCOPY = 4,
  IMAGETYPE_FDI = 5,
  IMAGETYPE_IMD = 6,
  IMAGETYPE_IMG = 7,
  IMAGETYPE_JV3 = 8,
  IMAGETYPE_LDBS = 9,
  IMAGETYPE_NFD = 10,
  IMAGETYPE_NSI = 11,
  IMAGETYPE_RAW = 12,
  IMAGETYPE_TD0 = 13,
};

extern const uint32_t ImageReaderWriterType_internal_data_[];
inline constexpr ImageReaderWriterType ImageReaderWriterType_MIN =
    static_cast<ImageReaderWriterType>(0);
inline constexpr ImageReaderWriterType ImageReaderWriterType_MAX =
    static_cast<ImageReaderWriterType>(13);
[[nodiscard]] inline bool ImageReaderWriterType_IsValid(int value) {
  return 0 <= value && value <= 13;
}
inline constexpr int ImageReaderWriterType_ARRAYSIZE = 13 + 1;
[[nodiscard]] const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL
ImageReaderWriterType_descriptor();
[[nodiscard]] inline auto ProtobufInternalGetEnumDescriptor(ImageReaderWriterType) {
  return ImageReaderWriterType_descriptor();
}
template <typename T>
[[nodiscard]] const ::std::string& ImageReaderWriterType_Name(T value) {
  static_assert(::std::is_same<T, ImageReaderWriterType>::value ||
                    ::std::is_integral<T>::value,
                "Incorrect type passed to ImageReaderWriterType_Name().");
  return ImageReaderWriterType_Name(static_cast<ImageReaderWriterType>(value));
}
template <>
[[nodiscard]] inline const ::std::string& ImageReaderWriterType_Name(ImageReaderWriterType value) {
  return ::google::protobuf::internal::NameOfDenseEnum<ImageReaderWriterType_descriptor, 0, 13>(
      static_cast<int>(value));
}
[[nodiscard]] inline bool ImageReaderWriterType_Parse(
    ::absl::string_view name, ImageReaderWriterType* PROTOBUF_NONNULL value) {
  return ::google::protobuf::internal::ParseNamedEnum<ImageReaderWriterType>(ImageReaderWriterType_descriptor(), name,
                                           value);
}
using ::google::protobuf::internal::generated_enum::AbslParseFlag;
using ::google::protobuf::internal::generated_enum::AbslUnparseFlag;

// ===================================================================



// ===================================================================



inline constexpr int kHelpFieldNumber = 50000;
extern ::google::protobuf::internal::ExtensionIdentifier<
    ::google::protobuf::FieldOptions, ::google::protobuf::internal::StringTypeTraits, 12, false>(help);
inline constexpr int kRecurseFieldNumber = 50001;
extern ::google::protobuf::internal::ExtensionIdentifier<
    ::google::protobuf::MessageOptions, ::google::protobuf::internal::PrimitiveTypeTraits< bool >, 8, false>(recurse);

// ===================================================================


#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
#ifdef __GNUC__
#pragma GCC diagnostic pop
#endif  // __GNUC__

// @@protoc_insertion_point(namespace_scope)


namespace google {
namespace protobuf {

template <>
struct is_proto_enum<::IndexMode> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::IndexMode>() {
  return ::IndexMode_descriptor();
}
template <>
struct is_proto_enum<::FluxSourceSinkType> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::FluxSourceSinkType>() {
  return ::FluxSourceSinkType_descriptor();
}
template <>
struct is_proto_enum<::ImageReaderWriterType> : std::true_type {};
template <>
inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::ImageReaderWriterType>() {
  return ::ImageReaderWriterType_descriptor();
}

}  // namespace protobuf
}  // namespace google

// @@protoc_insertion_point(global_scope)

#include "google/protobuf/port_undef.inc"
// clang-format on

#endif  // lib_2fconfig_2fcommon_2eproto_2epb_2eh
