// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: epics_event.proto

#ifndef PROTOBUF_INCLUDED_epics_5fevent_2eproto
#define PROTOBUF_INCLUDED_epics_5fevent_2eproto

#include <string>

#include <google/protobuf/stubs/common.h>

#if GOOGLE_PROTOBUF_VERSION < 3006001
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please update
#error your headers.
#endif
#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/arena.h>
#include <google/protobuf/arenastring.h>
#include <google/protobuf/generated_message_table_driven.h>
#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/inlined_string_field.h>
#include <google/protobuf/metadata.h>
#include <google/protobuf/message.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/unknown_field_set.h>
// @@protoc_insertion_point(includes)
#define PROTOBUF_INTERNAL_EXPORT_protobuf_epics_5fevent_2eproto 

namespace protobuf_epics_5fevent_2eproto {
// Internal implementation detail -- do not use these members.
struct TableStruct {
  static const ::google::protobuf::internal::ParseTableField entries[];
  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
  static const ::google::protobuf::internal::ParseTable schema[17];
  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
  static const ::google::protobuf::internal::SerializationTable serialization_table[];
  static const ::google::protobuf::uint32 offsets[];
};
void AddDescriptors();
}  // namespace protobuf_epics_5fevent_2eproto
namespace EPICS {
class FieldValue;
class FieldValueDefaultTypeInternal;
extern FieldValueDefaultTypeInternal _FieldValue_default_instance_;
class PayloadInfo;
class PayloadInfoDefaultTypeInternal;
extern PayloadInfoDefaultTypeInternal _PayloadInfo_default_instance_;
class ScalarByte;
class ScalarByteDefaultTypeInternal;
extern ScalarByteDefaultTypeInternal _ScalarByte_default_instance_;
class ScalarDouble;
class ScalarDoubleDefaultTypeInternal;
extern ScalarDoubleDefaultTypeInternal _ScalarDouble_default_instance_;
class ScalarEnum;
class ScalarEnumDefaultTypeInternal;
extern ScalarEnumDefaultTypeInternal _ScalarEnum_default_instance_;
class ScalarFloat;
class ScalarFloatDefaultTypeInternal;
extern ScalarFloatDefaultTypeInternal _ScalarFloat_default_instance_;
class ScalarInt;
class ScalarIntDefaultTypeInternal;
extern ScalarIntDefaultTypeInternal _ScalarInt_default_instance_;
class ScalarShort;
class ScalarShortDefaultTypeInternal;
extern ScalarShortDefaultTypeInternal _ScalarShort_default_instance_;
class ScalarString;
class ScalarStringDefaultTypeInternal;
extern ScalarStringDefaultTypeInternal _ScalarString_default_instance_;
class V4GenericBytes;
class V4GenericBytesDefaultTypeInternal;
extern V4GenericBytesDefaultTypeInternal _V4GenericBytes_default_instance_;
class VectorChar;
class VectorCharDefaultTypeInternal;
extern VectorCharDefaultTypeInternal _VectorChar_default_instance_;
class VectorDouble;
class VectorDoubleDefaultTypeInternal;
extern VectorDoubleDefaultTypeInternal _VectorDouble_default_instance_;
class VectorEnum;
class VectorEnumDefaultTypeInternal;
extern VectorEnumDefaultTypeInternal _VectorEnum_default_instance_;
class VectorFloat;
class VectorFloatDefaultTypeInternal;
extern VectorFloatDefaultTypeInternal _VectorFloat_default_instance_;
class VectorInt;
class VectorIntDefaultTypeInternal;
extern VectorIntDefaultTypeInternal _VectorInt_default_instance_;
class VectorShort;
class VectorShortDefaultTypeInternal;
extern VectorShortDefaultTypeInternal _VectorShort_default_instance_;
class VectorString;
class VectorStringDefaultTypeInternal;
extern VectorStringDefaultTypeInternal _VectorString_default_instance_;
}  // namespace EPICS
namespace google {
namespace protobuf {
template<> ::EPICS::FieldValue* Arena::CreateMaybeMessage<::EPICS::FieldValue>(Arena*);
template<> ::EPICS::PayloadInfo* Arena::CreateMaybeMessage<::EPICS::PayloadInfo>(Arena*);
template<> ::EPICS::ScalarByte* Arena::CreateMaybeMessage<::EPICS::ScalarByte>(Arena*);
template<> ::EPICS::ScalarDouble* Arena::CreateMaybeMessage<::EPICS::ScalarDouble>(Arena*);
template<> ::EPICS::ScalarEnum* Arena::CreateMaybeMessage<::EPICS::ScalarEnum>(Arena*);
template<> ::EPICS::ScalarFloat* Arena::CreateMaybeMessage<::EPICS::ScalarFloat>(Arena*);
template<> ::EPICS::ScalarInt* Arena::CreateMaybeMessage<::EPICS::ScalarInt>(Arena*);
template<> ::EPICS::ScalarShort* Arena::CreateMaybeMessage<::EPICS::ScalarShort>(Arena*);
template<> ::EPICS::ScalarString* Arena::CreateMaybeMessage<::EPICS::ScalarString>(Arena*);
template<> ::EPICS::V4GenericBytes* Arena::CreateMaybeMessage<::EPICS::V4GenericBytes>(Arena*);
template<> ::EPICS::VectorChar* Arena::CreateMaybeMessage<::EPICS::VectorChar>(Arena*);
template<> ::EPICS::VectorDouble* Arena::CreateMaybeMessage<::EPICS::VectorDouble>(Arena*);
template<> ::EPICS::VectorEnum* Arena::CreateMaybeMessage<::EPICS::VectorEnum>(Arena*);
template<> ::EPICS::VectorFloat* Arena::CreateMaybeMessage<::EPICS::VectorFloat>(Arena*);
template<> ::EPICS::VectorInt* Arena::CreateMaybeMessage<::EPICS::VectorInt>(Arena*);
template<> ::EPICS::VectorShort* Arena::CreateMaybeMessage<::EPICS::VectorShort>(Arena*);
template<> ::EPICS::VectorString* Arena::CreateMaybeMessage<::EPICS::VectorString>(Arena*);
}  // namespace protobuf
}  // namespace google
namespace EPICS {

enum PayloadType {
  SCALAR_STRING = 0,
  SCALAR_SHORT = 1,
  SCALAR_FLOAT = 2,
  SCALAR_ENUM = 3,
  SCALAR_BYTE = 4,
  SCALAR_INT = 5,
  SCALAR_DOUBLE = 6,
  WAVEFORM_STRING = 7,
  WAVEFORM_SHORT = 8,
  WAVEFORM_FLOAT = 9,
  WAVEFORM_ENUM = 10,
  WAVEFORM_BYTE = 11,
  WAVEFORM_INT = 12,
  WAVEFORM_DOUBLE = 13,
  V4_GENERIC_BYTES = 14
};
bool PayloadType_IsValid(int value);
const PayloadType PayloadType_MIN = SCALAR_STRING;
const PayloadType PayloadType_MAX = V4_GENERIC_BYTES;
const int PayloadType_ARRAYSIZE = PayloadType_MAX + 1;

const ::google::protobuf::EnumDescriptor* PayloadType_descriptor();
inline const ::std::string& PayloadType_Name(PayloadType value) {
  return ::google::protobuf::internal::NameOfEnum(
    PayloadType_descriptor(), value);
}
inline bool PayloadType_Parse(
    const ::std::string& name, PayloadType* value) {
  return ::google::protobuf::internal::ParseNamedEnum<PayloadType>(
    PayloadType_descriptor(), name, value);
}
// ===================================================================

class FieldValue : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.FieldValue) */ {
 public:
  FieldValue();
  virtual ~FieldValue();

  FieldValue(const FieldValue& from);

  inline FieldValue& operator=(const FieldValue& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  FieldValue(FieldValue&& from) noexcept
    : FieldValue() {
    *this = ::std::move(from);
  }

  inline FieldValue& operator=(FieldValue&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const FieldValue& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const FieldValue* internal_default_instance() {
    return reinterpret_cast<const FieldValue*>(
               &_FieldValue_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  void Swap(FieldValue* other);
  friend void swap(FieldValue& a, FieldValue& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline FieldValue* New() const final {
    return CreateMaybeMessage<FieldValue>(NULL);
  }

  FieldValue* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<FieldValue>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const FieldValue& from);
  void MergeFrom(const FieldValue& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(FieldValue* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required string name = 1;
  bool has_name() const;
  void clear_name();
  static const int kNameFieldNumber = 1;
  const ::std::string& name() const;
  void set_name(const ::std::string& value);
  #if LANG_CXX11
  void set_name(::std::string&& value);
  #endif
  void set_name(const char* value);
  void set_name(const char* value, size_t size);
  ::std::string* mutable_name();
  ::std::string* release_name();
  void set_allocated_name(::std::string* name);

  // required string val = 2;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 2;
  const ::std::string& val() const;
  void set_val(const ::std::string& value);
  #if LANG_CXX11
  void set_val(::std::string&& value);
  #endif
  void set_val(const char* value);
  void set_val(const char* value, size_t size);
  ::std::string* mutable_val();
  ::std::string* release_val();
  void set_allocated_val(::std::string* val);

  // @@protoc_insertion_point(class_scope:EPICS.FieldValue)
 private:
  void set_has_name();
  void clear_has_name();
  void set_has_val();
  void clear_has_val();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::internal::ArenaStringPtr name_;
  ::google::protobuf::internal::ArenaStringPtr val_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarString : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarString) */ {
 public:
  ScalarString();
  virtual ~ScalarString();

  ScalarString(const ScalarString& from);

  inline ScalarString& operator=(const ScalarString& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarString(ScalarString&& from) noexcept
    : ScalarString() {
    *this = ::std::move(from);
  }

  inline ScalarString& operator=(ScalarString&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarString& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarString* internal_default_instance() {
    return reinterpret_cast<const ScalarString*>(
               &_ScalarString_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  void Swap(ScalarString* other);
  friend void swap(ScalarString& a, ScalarString& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarString* New() const final {
    return CreateMaybeMessage<ScalarString>(NULL);
  }

  ScalarString* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarString>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarString& from);
  void MergeFrom(const ScalarString& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarString* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required string val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  const ::std::string& val() const;
  void set_val(const ::std::string& value);
  #if LANG_CXX11
  void set_val(::std::string&& value);
  #endif
  void set_val(const char* value);
  void set_val(const char* value, size_t size);
  ::std::string* mutable_val();
  ::std::string* release_val();
  void set_allocated_val(::std::string* val);

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarString)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::internal::ArenaStringPtr val_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarByte : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarByte) */ {
 public:
  ScalarByte();
  virtual ~ScalarByte();

  ScalarByte(const ScalarByte& from);

  inline ScalarByte& operator=(const ScalarByte& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarByte(ScalarByte&& from) noexcept
    : ScalarByte() {
    *this = ::std::move(from);
  }

  inline ScalarByte& operator=(ScalarByte&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarByte& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarByte* internal_default_instance() {
    return reinterpret_cast<const ScalarByte*>(
               &_ScalarByte_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  void Swap(ScalarByte* other);
  friend void swap(ScalarByte& a, ScalarByte& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarByte* New() const final {
    return CreateMaybeMessage<ScalarByte>(NULL);
  }

  ScalarByte* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarByte>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarByte& from);
  void MergeFrom(const ScalarByte& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarByte* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required bytes val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  const ::std::string& val() const;
  void set_val(const ::std::string& value);
  #if LANG_CXX11
  void set_val(::std::string&& value);
  #endif
  void set_val(const char* value);
  void set_val(const void* value, size_t size);
  ::std::string* mutable_val();
  ::std::string* release_val();
  void set_allocated_val(::std::string* val);

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarByte)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::internal::ArenaStringPtr val_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarShort : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarShort) */ {
 public:
  ScalarShort();
  virtual ~ScalarShort();

  ScalarShort(const ScalarShort& from);

  inline ScalarShort& operator=(const ScalarShort& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarShort(ScalarShort&& from) noexcept
    : ScalarShort() {
    *this = ::std::move(from);
  }

  inline ScalarShort& operator=(ScalarShort&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarShort& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarShort* internal_default_instance() {
    return reinterpret_cast<const ScalarShort*>(
               &_ScalarShort_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  void Swap(ScalarShort* other);
  friend void swap(ScalarShort& a, ScalarShort& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarShort* New() const final {
    return CreateMaybeMessage<ScalarShort>(NULL);
  }

  ScalarShort* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarShort>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarShort& from);
  void MergeFrom(const ScalarShort& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarShort* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // required sint32 val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val() const;
  void set_val(::google::protobuf::int32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarShort)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 val_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarInt : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarInt) */ {
 public:
  ScalarInt();
  virtual ~ScalarInt();

  ScalarInt(const ScalarInt& from);

  inline ScalarInt& operator=(const ScalarInt& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarInt(ScalarInt&& from) noexcept
    : ScalarInt() {
    *this = ::std::move(from);
  }

  inline ScalarInt& operator=(ScalarInt&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarInt& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarInt* internal_default_instance() {
    return reinterpret_cast<const ScalarInt*>(
               &_ScalarInt_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    4;

  void Swap(ScalarInt* other);
  friend void swap(ScalarInt& a, ScalarInt& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarInt* New() const final {
    return CreateMaybeMessage<ScalarInt>(NULL);
  }

  ScalarInt* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarInt>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarInt& from);
  void MergeFrom(const ScalarInt& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarInt* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // required sfixed32 val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val() const;
  void set_val(::google::protobuf::int32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarInt)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 val_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarEnum : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarEnum) */ {
 public:
  ScalarEnum();
  virtual ~ScalarEnum();

  ScalarEnum(const ScalarEnum& from);

  inline ScalarEnum& operator=(const ScalarEnum& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarEnum(ScalarEnum&& from) noexcept
    : ScalarEnum() {
    *this = ::std::move(from);
  }

  inline ScalarEnum& operator=(ScalarEnum&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarEnum& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarEnum* internal_default_instance() {
    return reinterpret_cast<const ScalarEnum*>(
               &_ScalarEnum_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    5;

  void Swap(ScalarEnum* other);
  friend void swap(ScalarEnum& a, ScalarEnum& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarEnum* New() const final {
    return CreateMaybeMessage<ScalarEnum>(NULL);
  }

  ScalarEnum* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarEnum>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarEnum& from);
  void MergeFrom(const ScalarEnum& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarEnum* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // required sint32 val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val() const;
  void set_val(::google::protobuf::int32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarEnum)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 val_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarFloat : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarFloat) */ {
 public:
  ScalarFloat();
  virtual ~ScalarFloat();

  ScalarFloat(const ScalarFloat& from);

  inline ScalarFloat& operator=(const ScalarFloat& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarFloat(ScalarFloat&& from) noexcept
    : ScalarFloat() {
    *this = ::std::move(from);
  }

  inline ScalarFloat& operator=(ScalarFloat&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarFloat& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarFloat* internal_default_instance() {
    return reinterpret_cast<const ScalarFloat*>(
               &_ScalarFloat_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    6;

  void Swap(ScalarFloat* other);
  friend void swap(ScalarFloat& a, ScalarFloat& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarFloat* New() const final {
    return CreateMaybeMessage<ScalarFloat>(NULL);
  }

  ScalarFloat* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarFloat>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarFloat& from);
  void MergeFrom(const ScalarFloat& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarFloat* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // required float val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  float val() const;
  void set_val(float value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarFloat)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  float val_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class ScalarDouble : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.ScalarDouble) */ {
 public:
  ScalarDouble();
  virtual ~ScalarDouble();

  ScalarDouble(const ScalarDouble& from);

  inline ScalarDouble& operator=(const ScalarDouble& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  ScalarDouble(ScalarDouble&& from) noexcept
    : ScalarDouble() {
    *this = ::std::move(from);
  }

  inline ScalarDouble& operator=(ScalarDouble&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const ScalarDouble& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ScalarDouble* internal_default_instance() {
    return reinterpret_cast<const ScalarDouble*>(
               &_ScalarDouble_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    7;

  void Swap(ScalarDouble* other);
  friend void swap(ScalarDouble& a, ScalarDouble& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline ScalarDouble* New() const final {
    return CreateMaybeMessage<ScalarDouble>(NULL);
  }

  ScalarDouble* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<ScalarDouble>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const ScalarDouble& from);
  void MergeFrom(const ScalarDouble& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ScalarDouble* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // required double val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  double val() const;
  void set_val(double value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.ScalarDouble)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  double val_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorString : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorString) */ {
 public:
  VectorString();
  virtual ~VectorString();

  VectorString(const VectorString& from);

  inline VectorString& operator=(const VectorString& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorString(VectorString&& from) noexcept
    : VectorString() {
    *this = ::std::move(from);
  }

  inline VectorString& operator=(VectorString&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorString& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorString* internal_default_instance() {
    return reinterpret_cast<const VectorString*>(
               &_VectorString_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    8;

  void Swap(VectorString* other);
  friend void swap(VectorString& a, VectorString& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorString* New() const final {
    return CreateMaybeMessage<VectorString>(NULL);
  }

  VectorString* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorString>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorString& from);
  void MergeFrom(const VectorString& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorString* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated string val = 3;
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  const ::std::string& val(int index) const;
  ::std::string* mutable_val(int index);
  void set_val(int index, const ::std::string& value);
  #if LANG_CXX11
  void set_val(int index, ::std::string&& value);
  #endif
  void set_val(int index, const char* value);
  void set_val(int index, const char* value, size_t size);
  ::std::string* add_val();
  void add_val(const ::std::string& value);
  #if LANG_CXX11
  void add_val(::std::string&& value);
  #endif
  void add_val(const char* value);
  void add_val(const char* value, size_t size);
  const ::google::protobuf::RepeatedPtrField< ::std::string>& val() const;
  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorString)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::std::string> val_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorChar : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorChar) */ {
 public:
  VectorChar();
  virtual ~VectorChar();

  VectorChar(const VectorChar& from);

  inline VectorChar& operator=(const VectorChar& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorChar(VectorChar&& from) noexcept
    : VectorChar() {
    *this = ::std::move(from);
  }

  inline VectorChar& operator=(VectorChar&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorChar& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorChar* internal_default_instance() {
    return reinterpret_cast<const VectorChar*>(
               &_VectorChar_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    9;

  void Swap(VectorChar* other);
  friend void swap(VectorChar& a, VectorChar& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorChar* New() const final {
    return CreateMaybeMessage<VectorChar>(NULL);
  }

  VectorChar* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorChar>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorChar& from);
  void MergeFrom(const VectorChar& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorChar* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required bytes val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  const ::std::string& val() const;
  void set_val(const ::std::string& value);
  #if LANG_CXX11
  void set_val(::std::string&& value);
  #endif
  void set_val(const char* value);
  void set_val(const void* value, size_t size);
  ::std::string* mutable_val();
  ::std::string* release_val();
  void set_allocated_val(::std::string* val);

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorChar)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::internal::ArenaStringPtr val_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorShort : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorShort) */ {
 public:
  VectorShort();
  virtual ~VectorShort();

  VectorShort(const VectorShort& from);

  inline VectorShort& operator=(const VectorShort& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorShort(VectorShort&& from) noexcept
    : VectorShort() {
    *this = ::std::move(from);
  }

  inline VectorShort& operator=(VectorShort&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorShort& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorShort* internal_default_instance() {
    return reinterpret_cast<const VectorShort*>(
               &_VectorShort_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    10;

  void Swap(VectorShort* other);
  friend void swap(VectorShort& a, VectorShort& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorShort* New() const final {
    return CreateMaybeMessage<VectorShort>(NULL);
  }

  VectorShort* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorShort>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorShort& from);
  void MergeFrom(const VectorShort& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorShort* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated sint32 val = 3 [packed = true];
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val(int index) const;
  void set_val(int index, ::google::protobuf::int32 value);
  void add_val(::google::protobuf::int32 value);
  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
      val() const;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
      mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorShort)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > val_;
  mutable int _val_cached_byte_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorInt : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorInt) */ {
 public:
  VectorInt();
  virtual ~VectorInt();

  VectorInt(const VectorInt& from);

  inline VectorInt& operator=(const VectorInt& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorInt(VectorInt&& from) noexcept
    : VectorInt() {
    *this = ::std::move(from);
  }

  inline VectorInt& operator=(VectorInt&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorInt& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorInt* internal_default_instance() {
    return reinterpret_cast<const VectorInt*>(
               &_VectorInt_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    11;

  void Swap(VectorInt* other);
  friend void swap(VectorInt& a, VectorInt& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorInt* New() const final {
    return CreateMaybeMessage<VectorInt>(NULL);
  }

  VectorInt* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorInt>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorInt& from);
  void MergeFrom(const VectorInt& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorInt* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated sfixed32 val = 3 [packed = true];
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val(int index) const;
  void set_val(int index, ::google::protobuf::int32 value);
  void add_val(::google::protobuf::int32 value);
  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
      val() const;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
      mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorInt)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > val_;
  mutable int _val_cached_byte_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorEnum : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorEnum) */ {
 public:
  VectorEnum();
  virtual ~VectorEnum();

  VectorEnum(const VectorEnum& from);

  inline VectorEnum& operator=(const VectorEnum& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorEnum(VectorEnum&& from) noexcept
    : VectorEnum() {
    *this = ::std::move(from);
  }

  inline VectorEnum& operator=(VectorEnum&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorEnum& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorEnum* internal_default_instance() {
    return reinterpret_cast<const VectorEnum*>(
               &_VectorEnum_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    12;

  void Swap(VectorEnum* other);
  friend void swap(VectorEnum& a, VectorEnum& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorEnum* New() const final {
    return CreateMaybeMessage<VectorEnum>(NULL);
  }

  VectorEnum* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorEnum>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorEnum& from);
  void MergeFrom(const VectorEnum& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorEnum* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated sint32 val = 3 [packed = true];
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  ::google::protobuf::int32 val(int index) const;
  void set_val(int index, ::google::protobuf::int32 value);
  void add_val(::google::protobuf::int32 value);
  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
      val() const;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
      mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorEnum)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > val_;
  mutable int _val_cached_byte_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorFloat : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorFloat) */ {
 public:
  VectorFloat();
  virtual ~VectorFloat();

  VectorFloat(const VectorFloat& from);

  inline VectorFloat& operator=(const VectorFloat& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorFloat(VectorFloat&& from) noexcept
    : VectorFloat() {
    *this = ::std::move(from);
  }

  inline VectorFloat& operator=(VectorFloat&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorFloat& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorFloat* internal_default_instance() {
    return reinterpret_cast<const VectorFloat*>(
               &_VectorFloat_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    13;

  void Swap(VectorFloat* other);
  friend void swap(VectorFloat& a, VectorFloat& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorFloat* New() const final {
    return CreateMaybeMessage<VectorFloat>(NULL);
  }

  VectorFloat* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorFloat>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorFloat& from);
  void MergeFrom(const VectorFloat& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorFloat* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated float val = 3 [packed = true];
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  float val(int index) const;
  void set_val(int index, float value);
  void add_val(float value);
  const ::google::protobuf::RepeatedField< float >&
      val() const;
  ::google::protobuf::RepeatedField< float >*
      mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorFloat)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedField< float > val_;
  mutable int _val_cached_byte_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class VectorDouble : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.VectorDouble) */ {
 public:
  VectorDouble();
  virtual ~VectorDouble();

  VectorDouble(const VectorDouble& from);

  inline VectorDouble& operator=(const VectorDouble& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  VectorDouble(VectorDouble&& from) noexcept
    : VectorDouble() {
    *this = ::std::move(from);
  }

  inline VectorDouble& operator=(VectorDouble&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const VectorDouble& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const VectorDouble* internal_default_instance() {
    return reinterpret_cast<const VectorDouble*>(
               &_VectorDouble_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    14;

  void Swap(VectorDouble* other);
  friend void swap(VectorDouble& a, VectorDouble& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline VectorDouble* New() const final {
    return CreateMaybeMessage<VectorDouble>(NULL);
  }

  VectorDouble* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<VectorDouble>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const VectorDouble& from);
  void MergeFrom(const VectorDouble& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(VectorDouble* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated double val = 3 [packed = true];
  int val_size() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  double val(int index) const;
  void set_val(int index, double value);
  void add_val(double value);
  const ::google::protobuf::RepeatedField< double >&
      val() const;
  ::google::protobuf::RepeatedField< double >*
      mutable_val();

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // @@protoc_insertion_point(class_scope:EPICS.VectorDouble)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedField< double > val_;
  mutable int _val_cached_byte_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class V4GenericBytes : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.V4GenericBytes) */ {
 public:
  V4GenericBytes();
  virtual ~V4GenericBytes();

  V4GenericBytes(const V4GenericBytes& from);

  inline V4GenericBytes& operator=(const V4GenericBytes& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  V4GenericBytes(V4GenericBytes&& from) noexcept
    : V4GenericBytes() {
    *this = ::std::move(from);
  }

  inline V4GenericBytes& operator=(V4GenericBytes&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const V4GenericBytes& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const V4GenericBytes* internal_default_instance() {
    return reinterpret_cast<const V4GenericBytes*>(
               &_V4GenericBytes_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    15;

  void Swap(V4GenericBytes* other);
  friend void swap(V4GenericBytes& a, V4GenericBytes& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline V4GenericBytes* New() const final {
    return CreateMaybeMessage<V4GenericBytes>(NULL);
  }

  V4GenericBytes* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<V4GenericBytes>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const V4GenericBytes& from);
  void MergeFrom(const V4GenericBytes& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(V4GenericBytes* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue fieldvalues = 7;
  int fieldvalues_size() const;
  void clear_fieldvalues();
  static const int kFieldvaluesFieldNumber = 7;
  ::EPICS::FieldValue* mutable_fieldvalues(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_fieldvalues();
  const ::EPICS::FieldValue& fieldvalues(int index) const;
  ::EPICS::FieldValue* add_fieldvalues();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      fieldvalues() const;

  // required bytes val = 3;
  bool has_val() const;
  void clear_val();
  static const int kValFieldNumber = 3;
  const ::std::string& val() const;
  void set_val(const ::std::string& value);
  #if LANG_CXX11
  void set_val(::std::string&& value);
  #endif
  void set_val(const char* value);
  void set_val(const void* value, size_t size);
  ::std::string* mutable_val();
  ::std::string* release_val();
  void set_allocated_val(::std::string* val);

  // required uint32 secondsintoyear = 1;
  bool has_secondsintoyear() const;
  void clear_secondsintoyear();
  static const int kSecondsintoyearFieldNumber = 1;
  ::google::protobuf::uint32 secondsintoyear() const;
  void set_secondsintoyear(::google::protobuf::uint32 value);

  // required uint32 nano = 2;
  bool has_nano() const;
  void clear_nano();
  static const int kNanoFieldNumber = 2;
  ::google::protobuf::uint32 nano() const;
  void set_nano(::google::protobuf::uint32 value);

  // optional int32 severity = 4 [default = 0];
  bool has_severity() const;
  void clear_severity();
  static const int kSeverityFieldNumber = 4;
  ::google::protobuf::int32 severity() const;
  void set_severity(::google::protobuf::int32 value);

  // optional int32 status = 5 [default = 0];
  bool has_status() const;
  void clear_status();
  static const int kStatusFieldNumber = 5;
  ::google::protobuf::int32 status() const;
  void set_status(::google::protobuf::int32 value);

  // optional uint32 repeatcount = 6;
  bool has_repeatcount() const;
  void clear_repeatcount();
  static const int kRepeatcountFieldNumber = 6;
  ::google::protobuf::uint32 repeatcount() const;
  void set_repeatcount(::google::protobuf::uint32 value);

  // optional bool fieldactualchange = 8;
  bool has_fieldactualchange() const;
  void clear_fieldactualchange();
  static const int kFieldactualchangeFieldNumber = 8;
  bool fieldactualchange() const;
  void set_fieldactualchange(bool value);

  // optional uint32 userTag = 9;
  bool has_usertag() const;
  void clear_usertag();
  static const int kUserTagFieldNumber = 9;
  ::google::protobuf::uint32 usertag() const;
  void set_usertag(::google::protobuf::uint32 value);

  // @@protoc_insertion_point(class_scope:EPICS.V4GenericBytes)
 private:
  void set_has_secondsintoyear();
  void clear_has_secondsintoyear();
  void set_has_nano();
  void clear_has_nano();
  void set_has_val();
  void clear_has_val();
  void set_has_severity();
  void clear_has_severity();
  void set_has_status();
  void clear_has_status();
  void set_has_repeatcount();
  void clear_has_repeatcount();
  void set_has_fieldactualchange();
  void clear_has_fieldactualchange();
  void set_has_usertag();
  void clear_has_usertag();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > fieldvalues_;
  ::google::protobuf::internal::ArenaStringPtr val_;
  ::google::protobuf::uint32 secondsintoyear_;
  ::google::protobuf::uint32 nano_;
  ::google::protobuf::int32 severity_;
  ::google::protobuf::int32 status_;
  ::google::protobuf::uint32 repeatcount_;
  bool fieldactualchange_;
  ::google::protobuf::uint32 usertag_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// -------------------------------------------------------------------

class PayloadInfo : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:EPICS.PayloadInfo) */ {
 public:
  PayloadInfo();
  virtual ~PayloadInfo();

  PayloadInfo(const PayloadInfo& from);

  inline PayloadInfo& operator=(const PayloadInfo& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  PayloadInfo(PayloadInfo&& from) noexcept
    : PayloadInfo() {
    *this = ::std::move(from);
  }

  inline PayloadInfo& operator=(PayloadInfo&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const PayloadInfo& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const PayloadInfo* internal_default_instance() {
    return reinterpret_cast<const PayloadInfo*>(
               &_PayloadInfo_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    16;

  void Swap(PayloadInfo* other);
  friend void swap(PayloadInfo& a, PayloadInfo& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline PayloadInfo* New() const final {
    return CreateMaybeMessage<PayloadInfo>(NULL);
  }

  PayloadInfo* New(::google::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<PayloadInfo>(arena);
  }
  void CopyFrom(const ::google::protobuf::Message& from) final;
  void MergeFrom(const ::google::protobuf::Message& from) final;
  void CopyFrom(const PayloadInfo& from);
  void MergeFrom(const PayloadInfo& from);
  void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) final;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const final;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(PayloadInfo* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .EPICS.FieldValue headers = 15;
  int headers_size() const;
  void clear_headers();
  static const int kHeadersFieldNumber = 15;
  ::EPICS::FieldValue* mutable_headers(int index);
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
      mutable_headers();
  const ::EPICS::FieldValue& headers(int index) const;
  ::EPICS::FieldValue* add_headers();
  const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
      headers() const;

  // required string pvname = 2;
  bool has_pvname() const;
  void clear_pvname();
  static const int kPvnameFieldNumber = 2;
  const ::std::string& pvname() const;
  void set_pvname(const ::std::string& value);
  #if LANG_CXX11
  void set_pvname(::std::string&& value);
  #endif
  void set_pvname(const char* value);
  void set_pvname(const char* value, size_t size);
  ::std::string* mutable_pvname();
  ::std::string* release_pvname();
  void set_allocated_pvname(::std::string* pvname);

  // optional string unused09 = 14;
  bool has_unused09() const;
  void clear_unused09();
  static const int kUnused09FieldNumber = 14;
  const ::std::string& unused09() const;
  void set_unused09(const ::std::string& value);
  #if LANG_CXX11
  void set_unused09(::std::string&& value);
  #endif
  void set_unused09(const char* value);
  void set_unused09(const char* value, size_t size);
  ::std::string* mutable_unused09();
  ::std::string* release_unused09();
  void set_allocated_unused09(::std::string* unused09);

  // required .EPICS.PayloadType type = 1;
  bool has_type() const;
  void clear_type();
  static const int kTypeFieldNumber = 1;
  ::EPICS::PayloadType type() const;
  void set_type(::EPICS::PayloadType value);

  // required int32 year = 3;
  bool has_year() const;
  void clear_year();
  static const int kYearFieldNumber = 3;
  ::google::protobuf::int32 year() const;
  void set_year(::google::protobuf::int32 value);

  // optional double unused00 = 5;
  bool has_unused00() const;
  void clear_unused00();
  static const int kUnused00FieldNumber = 5;
  double unused00() const;
  void set_unused00(double value);

  // optional double unused01 = 6;
  bool has_unused01() const;
  void clear_unused01();
  static const int kUnused01FieldNumber = 6;
  double unused01() const;
  void set_unused01(double value);

  // optional double unused02 = 7;
  bool has_unused02() const;
  void clear_unused02();
  static const int kUnused02FieldNumber = 7;
  double unused02() const;
  void set_unused02(double value);

  // optional double unused03 = 8;
  bool has_unused03() const;
  void clear_unused03();
  static const int kUnused03FieldNumber = 8;
  double unused03() const;
  void set_unused03(double value);

  // optional double unused04 = 9;
  bool has_unused04() const;
  void clear_unused04();
  static const int kUnused04FieldNumber = 9;
  double unused04() const;
  void set_unused04(double value);

  // optional double unused05 = 10;
  bool has_unused05() const;
  void clear_unused05();
  static const int kUnused05FieldNumber = 10;
  double unused05() const;
  void set_unused05(double value);

  // optional double unused06 = 11;
  bool has_unused06() const;
  void clear_unused06();
  static const int kUnused06FieldNumber = 11;
  double unused06() const;
  void set_unused06(double value);

  // optional double unused07 = 12;
  bool has_unused07() const;
  void clear_unused07();
  static const int kUnused07FieldNumber = 12;
  double unused07() const;
  void set_unused07(double value);

  // optional double unused08 = 13;
  bool has_unused08() const;
  void clear_unused08();
  static const int kUnused08FieldNumber = 13;
  double unused08() const;
  void set_unused08(double value);

  // optional int32 elementCount = 4;
  bool has_elementcount() const;
  void clear_elementcount();
  static const int kElementCountFieldNumber = 4;
  ::google::protobuf::int32 elementcount() const;
  void set_elementcount(::google::protobuf::int32 value);

  // @@protoc_insertion_point(class_scope:EPICS.PayloadInfo)
 private:
  void set_has_type();
  void clear_has_type();
  void set_has_pvname();
  void clear_has_pvname();
  void set_has_year();
  void clear_has_year();
  void set_has_elementcount();
  void clear_has_elementcount();
  void set_has_unused00();
  void clear_has_unused00();
  void set_has_unused01();
  void clear_has_unused01();
  void set_has_unused02();
  void clear_has_unused02();
  void set_has_unused03();
  void clear_has_unused03();
  void set_has_unused04();
  void clear_has_unused04();
  void set_has_unused05();
  void clear_has_unused05();
  void set_has_unused06();
  void clear_has_unused06();
  void set_has_unused07();
  void clear_has_unused07();
  void set_has_unused08();
  void clear_has_unused08();
  void set_has_unused09();
  void clear_has_unused09();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable ::google::protobuf::internal::CachedSize _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue > headers_;
  ::google::protobuf::internal::ArenaStringPtr pvname_;
  ::google::protobuf::internal::ArenaStringPtr unused09_;
  int type_;
  ::google::protobuf::int32 year_;
  double unused00_;
  double unused01_;
  double unused02_;
  double unused03_;
  double unused04_;
  double unused05_;
  double unused06_;
  double unused07_;
  double unused08_;
  ::google::protobuf::int32 elementcount_;
  friend struct ::protobuf_epics_5fevent_2eproto::TableStruct;
};
// ===================================================================


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

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

// required string name = 1;
inline bool FieldValue::has_name() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void FieldValue::set_has_name() {
  _has_bits_[0] |= 0x00000001u;
}
inline void FieldValue::clear_has_name() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void FieldValue::clear_name() {
  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_name();
}
inline const ::std::string& FieldValue::name() const {
  // @@protoc_insertion_point(field_get:EPICS.FieldValue.name)
  return name_.GetNoArena();
}
inline void FieldValue::set_name(const ::std::string& value) {
  set_has_name();
  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.FieldValue.name)
}
#if LANG_CXX11
inline void FieldValue::set_name(::std::string&& value) {
  set_has_name();
  name_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.FieldValue.name)
}
#endif
inline void FieldValue::set_name(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_name();
  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.FieldValue.name)
}
inline void FieldValue::set_name(const char* value, size_t size) {
  set_has_name();
  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.FieldValue.name)
}
inline ::std::string* FieldValue::mutable_name() {
  set_has_name();
  // @@protoc_insertion_point(field_mutable:EPICS.FieldValue.name)
  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* FieldValue::release_name() {
  // @@protoc_insertion_point(field_release:EPICS.FieldValue.name)
  if (!has_name()) {
    return NULL;
  }
  clear_has_name();
  return name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void FieldValue::set_allocated_name(::std::string* name) {
  if (name != NULL) {
    set_has_name();
  } else {
    clear_has_name();
  }
  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
  // @@protoc_insertion_point(field_set_allocated:EPICS.FieldValue.name)
}

// required string val = 2;
inline bool FieldValue::has_val() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void FieldValue::set_has_val() {
  _has_bits_[0] |= 0x00000002u;
}
inline void FieldValue::clear_has_val() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void FieldValue::clear_val() {
  val_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_val();
}
inline const ::std::string& FieldValue::val() const {
  // @@protoc_insertion_point(field_get:EPICS.FieldValue.val)
  return val_.GetNoArena();
}
inline void FieldValue::set_val(const ::std::string& value) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.FieldValue.val)
}
#if LANG_CXX11
inline void FieldValue::set_val(::std::string&& value) {
  set_has_val();
  val_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.FieldValue.val)
}
#endif
inline void FieldValue::set_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.FieldValue.val)
}
inline void FieldValue::set_val(const char* value, size_t size) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.FieldValue.val)
}
inline ::std::string* FieldValue::mutable_val() {
  set_has_val();
  // @@protoc_insertion_point(field_mutable:EPICS.FieldValue.val)
  return val_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* FieldValue::release_val() {
  // @@protoc_insertion_point(field_release:EPICS.FieldValue.val)
  if (!has_val()) {
    return NULL;
  }
  clear_has_val();
  return val_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void FieldValue::set_allocated_val(::std::string* val) {
  if (val != NULL) {
    set_has_val();
  } else {
    clear_has_val();
  }
  val_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), val);
  // @@protoc_insertion_point(field_set_allocated:EPICS.FieldValue.val)
}

// -------------------------------------------------------------------

// ScalarString

// required uint32 secondsintoyear = 1;
inline bool ScalarString::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarString::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarString::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarString::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarString::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarString::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarString::has_nano() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarString::set_has_nano() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarString::clear_has_nano() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarString::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarString::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.nano)
  return nano_;
}
inline void ScalarString::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.nano)
}

// required string val = 3;
inline bool ScalarString::has_val() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarString::set_has_val() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarString::clear_has_val() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarString::clear_val() {
  val_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_val();
}
inline const ::std::string& ScalarString::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.val)
  return val_.GetNoArena();
}
inline void ScalarString::set_val(const ::std::string& value) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.val)
}
#if LANG_CXX11
inline void ScalarString::set_val(::std::string&& value) {
  set_has_val();
  val_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.ScalarString.val)
}
#endif
inline void ScalarString::set_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.ScalarString.val)
}
inline void ScalarString::set_val(const char* value, size_t size) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.ScalarString.val)
}
inline ::std::string* ScalarString::mutable_val() {
  set_has_val();
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarString.val)
  return val_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ScalarString::release_val() {
  // @@protoc_insertion_point(field_release:EPICS.ScalarString.val)
  if (!has_val()) {
    return NULL;
  }
  clear_has_val();
  return val_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ScalarString::set_allocated_val(::std::string* val) {
  if (val != NULL) {
    set_has_val();
  } else {
    clear_has_val();
  }
  val_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), val);
  // @@protoc_insertion_point(field_set_allocated:EPICS.ScalarString.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarString::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarString::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarString::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarString::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarString::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.severity)
  return severity_;
}
inline void ScalarString::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarString::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarString::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarString::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarString::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarString::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.status)
  return status_;
}
inline void ScalarString::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarString::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarString::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarString::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarString::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarString::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.repeatcount)
  return repeatcount_;
}
inline void ScalarString::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarString::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarString::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarString::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarString.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarString::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarString.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarString::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarString::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarString.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarString::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarString.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarString::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarString::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarString::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarString::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarString::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarString.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarString::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarString.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarByte

// required uint32 secondsintoyear = 1;
inline bool ScalarByte::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarByte::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarByte::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarByte::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarByte::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarByte::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarByte::has_nano() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarByte::set_has_nano() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarByte::clear_has_nano() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarByte::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarByte::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.nano)
  return nano_;
}
inline void ScalarByte::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.nano)
}

// required bytes val = 3;
inline bool ScalarByte::has_val() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarByte::set_has_val() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarByte::clear_has_val() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarByte::clear_val() {
  val_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_val();
}
inline const ::std::string& ScalarByte::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.val)
  return val_.GetNoArena();
}
inline void ScalarByte::set_val(const ::std::string& value) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.val)
}
#if LANG_CXX11
inline void ScalarByte::set_val(::std::string&& value) {
  set_has_val();
  val_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.ScalarByte.val)
}
#endif
inline void ScalarByte::set_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.ScalarByte.val)
}
inline void ScalarByte::set_val(const void* value, size_t size) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.ScalarByte.val)
}
inline ::std::string* ScalarByte::mutable_val() {
  set_has_val();
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarByte.val)
  return val_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* ScalarByte::release_val() {
  // @@protoc_insertion_point(field_release:EPICS.ScalarByte.val)
  if (!has_val()) {
    return NULL;
  }
  clear_has_val();
  return val_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void ScalarByte::set_allocated_val(::std::string* val) {
  if (val != NULL) {
    set_has_val();
  } else {
    clear_has_val();
  }
  val_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), val);
  // @@protoc_insertion_point(field_set_allocated:EPICS.ScalarByte.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarByte::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarByte::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarByte::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarByte::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarByte::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.severity)
  return severity_;
}
inline void ScalarByte::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarByte::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarByte::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarByte::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarByte::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarByte::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.status)
  return status_;
}
inline void ScalarByte::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarByte::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarByte::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarByte::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarByte::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarByte::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.repeatcount)
  return repeatcount_;
}
inline void ScalarByte::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarByte::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarByte::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarByte::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarByte.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarByte::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarByte.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarByte::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarByte::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarByte.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarByte::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarByte.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarByte::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarByte::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarByte::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarByte::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarByte::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarByte.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarByte::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarByte.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarShort

// required uint32 secondsintoyear = 1;
inline bool ScalarShort::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarShort::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarShort::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarShort::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarShort::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarShort::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarShort::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarShort::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarShort::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarShort::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarShort::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.nano)
  return nano_;
}
inline void ScalarShort::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.nano)
}

// required sint32 val = 3;
inline bool ScalarShort::has_val() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarShort::set_has_val() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarShort::clear_has_val() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarShort::clear_val() {
  val_ = 0;
  clear_has_val();
}
inline ::google::protobuf::int32 ScalarShort::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.val)
  return val_;
}
inline void ScalarShort::set_val(::google::protobuf::int32 value) {
  set_has_val();
  val_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarShort::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarShort::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarShort::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarShort::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarShort::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.severity)
  return severity_;
}
inline void ScalarShort::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarShort::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarShort::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarShort::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarShort::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarShort::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.status)
  return status_;
}
inline void ScalarShort::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarShort::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarShort::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarShort::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarShort::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarShort::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.repeatcount)
  return repeatcount_;
}
inline void ScalarShort::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarShort::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarShort::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarShort::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarShort.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarShort::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarShort.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarShort::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarShort::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarShort.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarShort::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarShort.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarShort::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarShort::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarShort::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarShort::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarShort::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarShort.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarShort::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarShort.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarInt

// required uint32 secondsintoyear = 1;
inline bool ScalarInt::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarInt::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarInt::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarInt::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarInt::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarInt::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarInt::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarInt::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarInt::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarInt::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarInt::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.nano)
  return nano_;
}
inline void ScalarInt::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.nano)
}

// required sfixed32 val = 3;
inline bool ScalarInt::has_val() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarInt::set_has_val() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarInt::clear_has_val() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarInt::clear_val() {
  val_ = 0;
  clear_has_val();
}
inline ::google::protobuf::int32 ScalarInt::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.val)
  return val_;
}
inline void ScalarInt::set_val(::google::protobuf::int32 value) {
  set_has_val();
  val_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarInt::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarInt::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarInt::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarInt::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarInt::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.severity)
  return severity_;
}
inline void ScalarInt::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarInt::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarInt::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarInt::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarInt::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarInt::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.status)
  return status_;
}
inline void ScalarInt::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarInt::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarInt::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarInt::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarInt::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarInt::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.repeatcount)
  return repeatcount_;
}
inline void ScalarInt::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarInt::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarInt::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarInt::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarInt.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarInt::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarInt.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarInt::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarInt::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarInt.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarInt::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarInt.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarInt::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarInt::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarInt::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarInt::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarInt::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarInt.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarInt::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarInt.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarEnum

// required uint32 secondsintoyear = 1;
inline bool ScalarEnum::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarEnum::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarEnum::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarEnum::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarEnum::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarEnum::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarEnum::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarEnum::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarEnum::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarEnum::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarEnum::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.nano)
  return nano_;
}
inline void ScalarEnum::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.nano)
}

// required sint32 val = 3;
inline bool ScalarEnum::has_val() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarEnum::set_has_val() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarEnum::clear_has_val() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarEnum::clear_val() {
  val_ = 0;
  clear_has_val();
}
inline ::google::protobuf::int32 ScalarEnum::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.val)
  return val_;
}
inline void ScalarEnum::set_val(::google::protobuf::int32 value) {
  set_has_val();
  val_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarEnum::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarEnum::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarEnum::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarEnum::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarEnum::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.severity)
  return severity_;
}
inline void ScalarEnum::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarEnum::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarEnum::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarEnum::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarEnum::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarEnum::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.status)
  return status_;
}
inline void ScalarEnum::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarEnum::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarEnum::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarEnum::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarEnum::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarEnum::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.repeatcount)
  return repeatcount_;
}
inline void ScalarEnum::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarEnum::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarEnum::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarEnum::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarEnum.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarEnum::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarEnum.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarEnum::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarEnum::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarEnum.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarEnum::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarEnum.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarEnum::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarEnum::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarEnum::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarEnum::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarEnum::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarEnum.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarEnum::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarEnum.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarFloat

// required uint32 secondsintoyear = 1;
inline bool ScalarFloat::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarFloat::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarFloat::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarFloat::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarFloat::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarFloat::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarFloat::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarFloat::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarFloat::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarFloat::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarFloat::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.nano)
  return nano_;
}
inline void ScalarFloat::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.nano)
}

// required float val = 3;
inline bool ScalarFloat::has_val() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarFloat::set_has_val() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarFloat::clear_has_val() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarFloat::clear_val() {
  val_ = 0;
  clear_has_val();
}
inline float ScalarFloat::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.val)
  return val_;
}
inline void ScalarFloat::set_val(float value) {
  set_has_val();
  val_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarFloat::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarFloat::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarFloat::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarFloat::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarFloat::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.severity)
  return severity_;
}
inline void ScalarFloat::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarFloat::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarFloat::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarFloat::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarFloat::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarFloat::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.status)
  return status_;
}
inline void ScalarFloat::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarFloat::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarFloat::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarFloat::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarFloat::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarFloat::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.repeatcount)
  return repeatcount_;
}
inline void ScalarFloat::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarFloat::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarFloat::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarFloat::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarFloat.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarFloat::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarFloat.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarFloat::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarFloat::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarFloat.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarFloat::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarFloat.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarFloat::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarFloat::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarFloat::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarFloat::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarFloat::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarFloat.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarFloat::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarFloat.fieldactualchange)
}

// -------------------------------------------------------------------

// ScalarDouble

// required uint32 secondsintoyear = 1;
inline bool ScalarDouble::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ScalarDouble::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ScalarDouble::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ScalarDouble::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 ScalarDouble::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.secondsintoyear)
  return secondsintoyear_;
}
inline void ScalarDouble::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.secondsintoyear)
}

// required uint32 nano = 2;
inline bool ScalarDouble::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ScalarDouble::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ScalarDouble::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ScalarDouble::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 ScalarDouble::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.nano)
  return nano_;
}
inline void ScalarDouble::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.nano)
}

// required double val = 3;
inline bool ScalarDouble::has_val() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ScalarDouble::set_has_val() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ScalarDouble::clear_has_val() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ScalarDouble::clear_val() {
  val_ = 0;
  clear_has_val();
}
inline double ScalarDouble::val() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.val)
  return val_;
}
inline void ScalarDouble::set_val(double value) {
  set_has_val();
  val_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.val)
}

// optional int32 severity = 4 [default = 0];
inline bool ScalarDouble::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ScalarDouble::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ScalarDouble::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ScalarDouble::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 ScalarDouble::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.severity)
  return severity_;
}
inline void ScalarDouble::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.severity)
}

// optional int32 status = 5 [default = 0];
inline bool ScalarDouble::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ScalarDouble::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ScalarDouble::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ScalarDouble::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 ScalarDouble::status() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.status)
  return status_;
}
inline void ScalarDouble::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.status)
}

// optional uint32 repeatcount = 6;
inline bool ScalarDouble::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ScalarDouble::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ScalarDouble::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ScalarDouble::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 ScalarDouble::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.repeatcount)
  return repeatcount_;
}
inline void ScalarDouble::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int ScalarDouble::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void ScalarDouble::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* ScalarDouble::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.ScalarDouble.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
ScalarDouble::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.ScalarDouble.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& ScalarDouble::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* ScalarDouble::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.ScalarDouble.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
ScalarDouble::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.ScalarDouble.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool ScalarDouble::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ScalarDouble::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ScalarDouble::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ScalarDouble::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool ScalarDouble::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.ScalarDouble.fieldactualchange)
  return fieldactualchange_;
}
inline void ScalarDouble::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.ScalarDouble.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorString

// required uint32 secondsintoyear = 1;
inline bool VectorString::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorString::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorString::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorString::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorString::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorString::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorString::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorString::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorString::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorString::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorString::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.nano)
  return nano_;
}
inline void VectorString::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.nano)
}

// repeated string val = 3;
inline int VectorString::val_size() const {
  return val_.size();
}
inline void VectorString::clear_val() {
  val_.Clear();
}
inline const ::std::string& VectorString::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.val)
  return val_.Get(index);
}
inline ::std::string* VectorString::mutable_val(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorString.val)
  return val_.Mutable(index);
}
inline void VectorString::set_val(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:EPICS.VectorString.val)
  val_.Mutable(index)->assign(value);
}
#if LANG_CXX11
inline void VectorString::set_val(int index, ::std::string&& value) {
  // @@protoc_insertion_point(field_set:EPICS.VectorString.val)
  val_.Mutable(index)->assign(std::move(value));
}
#endif
inline void VectorString::set_val(int index, const char* value) {
  GOOGLE_DCHECK(value != NULL);
  val_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:EPICS.VectorString.val)
}
inline void VectorString::set_val(int index, const char* value, size_t size) {
  val_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:EPICS.VectorString.val)
}
inline ::std::string* VectorString::add_val() {
  // @@protoc_insertion_point(field_add_mutable:EPICS.VectorString.val)
  return val_.Add();
}
inline void VectorString::add_val(const ::std::string& value) {
  val_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorString.val)
}
#if LANG_CXX11
inline void VectorString::add_val(::std::string&& value) {
  val_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:EPICS.VectorString.val)
}
#endif
inline void VectorString::add_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  val_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:EPICS.VectorString.val)
}
inline void VectorString::add_val(const char* value, size_t size) {
  val_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:EPICS.VectorString.val)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
VectorString::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorString.val)
  return val_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
VectorString::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorString.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorString::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorString::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorString::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorString::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorString::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.severity)
  return severity_;
}
inline void VectorString::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorString::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorString::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorString::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorString::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorString::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.status)
  return status_;
}
inline void VectorString::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorString::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorString::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorString::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorString::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorString::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.repeatcount)
  return repeatcount_;
}
inline void VectorString::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorString::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorString::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorString::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorString.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorString::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorString.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorString::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorString::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorString.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorString::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorString.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorString::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorString::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorString::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorString::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorString::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorString.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorString::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorString.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorChar

// required uint32 secondsintoyear = 1;
inline bool VectorChar::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorChar::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorChar::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorChar::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorChar::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorChar::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorChar::has_nano() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorChar::set_has_nano() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorChar::clear_has_nano() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorChar::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorChar::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.nano)
  return nano_;
}
inline void VectorChar::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.nano)
}

// required bytes val = 3;
inline bool VectorChar::has_val() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorChar::set_has_val() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorChar::clear_has_val() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorChar::clear_val() {
  val_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_val();
}
inline const ::std::string& VectorChar::val() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.val)
  return val_.GetNoArena();
}
inline void VectorChar::set_val(const ::std::string& value) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.val)
}
#if LANG_CXX11
inline void VectorChar::set_val(::std::string&& value) {
  set_has_val();
  val_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.VectorChar.val)
}
#endif
inline void VectorChar::set_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.VectorChar.val)
}
inline void VectorChar::set_val(const void* value, size_t size) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.VectorChar.val)
}
inline ::std::string* VectorChar::mutable_val() {
  set_has_val();
  // @@protoc_insertion_point(field_mutable:EPICS.VectorChar.val)
  return val_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* VectorChar::release_val() {
  // @@protoc_insertion_point(field_release:EPICS.VectorChar.val)
  if (!has_val()) {
    return NULL;
  }
  clear_has_val();
  return val_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void VectorChar::set_allocated_val(::std::string* val) {
  if (val != NULL) {
    set_has_val();
  } else {
    clear_has_val();
  }
  val_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), val);
  // @@protoc_insertion_point(field_set_allocated:EPICS.VectorChar.val)
}

// optional int32 severity = 4 [default = 0];
inline bool VectorChar::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorChar::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorChar::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorChar::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorChar::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.severity)
  return severity_;
}
inline void VectorChar::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorChar::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorChar::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorChar::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorChar::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorChar::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.status)
  return status_;
}
inline void VectorChar::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorChar::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorChar::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorChar::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorChar::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorChar::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.repeatcount)
  return repeatcount_;
}
inline void VectorChar::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorChar::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorChar::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorChar::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorChar.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorChar::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorChar.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorChar::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorChar::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorChar.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorChar::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorChar.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorChar::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void VectorChar::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void VectorChar::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void VectorChar::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorChar::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorChar.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorChar::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorChar.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorShort

// required uint32 secondsintoyear = 1;
inline bool VectorShort::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorShort::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorShort::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorShort::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorShort::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorShort::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorShort::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorShort::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorShort::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorShort::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorShort::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.nano)
  return nano_;
}
inline void VectorShort::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.nano)
}

// repeated sint32 val = 3 [packed = true];
inline int VectorShort::val_size() const {
  return val_.size();
}
inline void VectorShort::clear_val() {
  val_.Clear();
}
inline ::google::protobuf::int32 VectorShort::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.val)
  return val_.Get(index);
}
inline void VectorShort::set_val(int index, ::google::protobuf::int32 value) {
  val_.Set(index, value);
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.val)
}
inline void VectorShort::add_val(::google::protobuf::int32 value) {
  val_.Add(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorShort.val)
}
inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
VectorShort::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorShort.val)
  return val_;
}
inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
VectorShort::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorShort.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorShort::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorShort::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorShort::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorShort::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorShort::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.severity)
  return severity_;
}
inline void VectorShort::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorShort::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorShort::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorShort::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorShort::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorShort::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.status)
  return status_;
}
inline void VectorShort::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorShort::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorShort::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorShort::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorShort::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorShort::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.repeatcount)
  return repeatcount_;
}
inline void VectorShort::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorShort::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorShort::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorShort::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorShort.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorShort::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorShort.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorShort::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorShort::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorShort.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorShort::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorShort.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorShort::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorShort::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorShort::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorShort::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorShort::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorShort.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorShort::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorShort.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorInt

// required uint32 secondsintoyear = 1;
inline bool VectorInt::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorInt::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorInt::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorInt::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorInt::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorInt::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorInt::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorInt::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorInt::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorInt::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorInt::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.nano)
  return nano_;
}
inline void VectorInt::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.nano)
}

// repeated sfixed32 val = 3 [packed = true];
inline int VectorInt::val_size() const {
  return val_.size();
}
inline void VectorInt::clear_val() {
  val_.Clear();
}
inline ::google::protobuf::int32 VectorInt::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.val)
  return val_.Get(index);
}
inline void VectorInt::set_val(int index, ::google::protobuf::int32 value) {
  val_.Set(index, value);
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.val)
}
inline void VectorInt::add_val(::google::protobuf::int32 value) {
  val_.Add(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorInt.val)
}
inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
VectorInt::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorInt.val)
  return val_;
}
inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
VectorInt::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorInt.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorInt::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorInt::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorInt::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorInt::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorInt::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.severity)
  return severity_;
}
inline void VectorInt::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorInt::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorInt::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorInt::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorInt::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorInt::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.status)
  return status_;
}
inline void VectorInt::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorInt::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorInt::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorInt::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorInt::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorInt::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.repeatcount)
  return repeatcount_;
}
inline void VectorInt::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorInt::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorInt::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorInt::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorInt.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorInt::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorInt.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorInt::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorInt::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorInt.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorInt::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorInt.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorInt::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorInt::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorInt::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorInt::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorInt::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorInt.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorInt::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorInt.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorEnum

// required uint32 secondsintoyear = 1;
inline bool VectorEnum::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorEnum::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorEnum::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorEnum::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorEnum::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorEnum::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorEnum::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorEnum::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorEnum::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorEnum::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorEnum::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.nano)
  return nano_;
}
inline void VectorEnum::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.nano)
}

// repeated sint32 val = 3 [packed = true];
inline int VectorEnum::val_size() const {
  return val_.size();
}
inline void VectorEnum::clear_val() {
  val_.Clear();
}
inline ::google::protobuf::int32 VectorEnum::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.val)
  return val_.Get(index);
}
inline void VectorEnum::set_val(int index, ::google::protobuf::int32 value) {
  val_.Set(index, value);
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.val)
}
inline void VectorEnum::add_val(::google::protobuf::int32 value) {
  val_.Add(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorEnum.val)
}
inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
VectorEnum::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorEnum.val)
  return val_;
}
inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
VectorEnum::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorEnum.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorEnum::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorEnum::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorEnum::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorEnum::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorEnum::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.severity)
  return severity_;
}
inline void VectorEnum::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorEnum::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorEnum::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorEnum::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorEnum::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorEnum::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.status)
  return status_;
}
inline void VectorEnum::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorEnum::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorEnum::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorEnum::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorEnum::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorEnum::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.repeatcount)
  return repeatcount_;
}
inline void VectorEnum::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorEnum::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorEnum::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorEnum::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorEnum.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorEnum::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorEnum.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorEnum::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorEnum::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorEnum.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorEnum::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorEnum.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorEnum::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorEnum::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorEnum::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorEnum::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorEnum::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorEnum.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorEnum::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorEnum.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorFloat

// required uint32 secondsintoyear = 1;
inline bool VectorFloat::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorFloat::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorFloat::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorFloat::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorFloat::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorFloat::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorFloat::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorFloat::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorFloat::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorFloat::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorFloat::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.nano)
  return nano_;
}
inline void VectorFloat::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.nano)
}

// repeated float val = 3 [packed = true];
inline int VectorFloat::val_size() const {
  return val_.size();
}
inline void VectorFloat::clear_val() {
  val_.Clear();
}
inline float VectorFloat::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.val)
  return val_.Get(index);
}
inline void VectorFloat::set_val(int index, float value) {
  val_.Set(index, value);
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.val)
}
inline void VectorFloat::add_val(float value) {
  val_.Add(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorFloat.val)
}
inline const ::google::protobuf::RepeatedField< float >&
VectorFloat::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorFloat.val)
  return val_;
}
inline ::google::protobuf::RepeatedField< float >*
VectorFloat::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorFloat.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorFloat::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorFloat::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorFloat::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorFloat::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorFloat::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.severity)
  return severity_;
}
inline void VectorFloat::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorFloat::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorFloat::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorFloat::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorFloat::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorFloat::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.status)
  return status_;
}
inline void VectorFloat::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorFloat::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorFloat::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorFloat::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorFloat::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorFloat::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.repeatcount)
  return repeatcount_;
}
inline void VectorFloat::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorFloat::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorFloat::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorFloat::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorFloat.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorFloat::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorFloat.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorFloat::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorFloat::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorFloat.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorFloat::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorFloat.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorFloat::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorFloat::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorFloat::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorFloat::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorFloat::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorFloat.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorFloat::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorFloat.fieldactualchange)
}

// -------------------------------------------------------------------

// VectorDouble

// required uint32 secondsintoyear = 1;
inline bool VectorDouble::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void VectorDouble::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000001u;
}
inline void VectorDouble::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void VectorDouble::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 VectorDouble::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.secondsintoyear)
  return secondsintoyear_;
}
inline void VectorDouble::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.secondsintoyear)
}

// required uint32 nano = 2;
inline bool VectorDouble::has_nano() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void VectorDouble::set_has_nano() {
  _has_bits_[0] |= 0x00000002u;
}
inline void VectorDouble::clear_has_nano() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void VectorDouble::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 VectorDouble::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.nano)
  return nano_;
}
inline void VectorDouble::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.nano)
}

// repeated double val = 3 [packed = true];
inline int VectorDouble::val_size() const {
  return val_.size();
}
inline void VectorDouble::clear_val() {
  val_.Clear();
}
inline double VectorDouble::val(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.val)
  return val_.Get(index);
}
inline void VectorDouble::set_val(int index, double value) {
  val_.Set(index, value);
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.val)
}
inline void VectorDouble::add_val(double value) {
  val_.Add(value);
  // @@protoc_insertion_point(field_add:EPICS.VectorDouble.val)
}
inline const ::google::protobuf::RepeatedField< double >&
VectorDouble::val() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorDouble.val)
  return val_;
}
inline ::google::protobuf::RepeatedField< double >*
VectorDouble::mutable_val() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorDouble.val)
  return &val_;
}

// optional int32 severity = 4 [default = 0];
inline bool VectorDouble::has_severity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void VectorDouble::set_has_severity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void VectorDouble::clear_has_severity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void VectorDouble::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 VectorDouble::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.severity)
  return severity_;
}
inline void VectorDouble::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.severity)
}

// optional int32 status = 5 [default = 0];
inline bool VectorDouble::has_status() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void VectorDouble::set_has_status() {
  _has_bits_[0] |= 0x00000008u;
}
inline void VectorDouble::clear_has_status() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void VectorDouble::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 VectorDouble::status() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.status)
  return status_;
}
inline void VectorDouble::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.status)
}

// optional uint32 repeatcount = 6;
inline bool VectorDouble::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void VectorDouble::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000010u;
}
inline void VectorDouble::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void VectorDouble::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 VectorDouble::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.repeatcount)
  return repeatcount_;
}
inline void VectorDouble::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int VectorDouble::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void VectorDouble::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* VectorDouble::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.VectorDouble.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
VectorDouble::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.VectorDouble.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& VectorDouble::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* VectorDouble::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.VectorDouble.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
VectorDouble::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.VectorDouble.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool VectorDouble::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void VectorDouble::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000020u;
}
inline void VectorDouble::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void VectorDouble::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool VectorDouble::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.VectorDouble.fieldactualchange)
  return fieldactualchange_;
}
inline void VectorDouble::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.VectorDouble.fieldactualchange)
}

// -------------------------------------------------------------------

// V4GenericBytes

// required uint32 secondsintoyear = 1;
inline bool V4GenericBytes::has_secondsintoyear() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void V4GenericBytes::set_has_secondsintoyear() {
  _has_bits_[0] |= 0x00000002u;
}
inline void V4GenericBytes::clear_has_secondsintoyear() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void V4GenericBytes::clear_secondsintoyear() {
  secondsintoyear_ = 0u;
  clear_has_secondsintoyear();
}
inline ::google::protobuf::uint32 V4GenericBytes::secondsintoyear() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.secondsintoyear)
  return secondsintoyear_;
}
inline void V4GenericBytes::set_secondsintoyear(::google::protobuf::uint32 value) {
  set_has_secondsintoyear();
  secondsintoyear_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.secondsintoyear)
}

// required uint32 nano = 2;
inline bool V4GenericBytes::has_nano() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void V4GenericBytes::set_has_nano() {
  _has_bits_[0] |= 0x00000004u;
}
inline void V4GenericBytes::clear_has_nano() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void V4GenericBytes::clear_nano() {
  nano_ = 0u;
  clear_has_nano();
}
inline ::google::protobuf::uint32 V4GenericBytes::nano() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.nano)
  return nano_;
}
inline void V4GenericBytes::set_nano(::google::protobuf::uint32 value) {
  set_has_nano();
  nano_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.nano)
}

// required bytes val = 3;
inline bool V4GenericBytes::has_val() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void V4GenericBytes::set_has_val() {
  _has_bits_[0] |= 0x00000001u;
}
inline void V4GenericBytes::clear_has_val() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void V4GenericBytes::clear_val() {
  val_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_val();
}
inline const ::std::string& V4GenericBytes::val() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.val)
  return val_.GetNoArena();
}
inline void V4GenericBytes::set_val(const ::std::string& value) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.val)
}
#if LANG_CXX11
inline void V4GenericBytes::set_val(::std::string&& value) {
  set_has_val();
  val_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.V4GenericBytes.val)
}
#endif
inline void V4GenericBytes::set_val(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.V4GenericBytes.val)
}
inline void V4GenericBytes::set_val(const void* value, size_t size) {
  set_has_val();
  val_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.V4GenericBytes.val)
}
inline ::std::string* V4GenericBytes::mutable_val() {
  set_has_val();
  // @@protoc_insertion_point(field_mutable:EPICS.V4GenericBytes.val)
  return val_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* V4GenericBytes::release_val() {
  // @@protoc_insertion_point(field_release:EPICS.V4GenericBytes.val)
  if (!has_val()) {
    return NULL;
  }
  clear_has_val();
  return val_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void V4GenericBytes::set_allocated_val(::std::string* val) {
  if (val != NULL) {
    set_has_val();
  } else {
    clear_has_val();
  }
  val_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), val);
  // @@protoc_insertion_point(field_set_allocated:EPICS.V4GenericBytes.val)
}

// optional int32 severity = 4 [default = 0];
inline bool V4GenericBytes::has_severity() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void V4GenericBytes::set_has_severity() {
  _has_bits_[0] |= 0x00000008u;
}
inline void V4GenericBytes::clear_has_severity() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void V4GenericBytes::clear_severity() {
  severity_ = 0;
  clear_has_severity();
}
inline ::google::protobuf::int32 V4GenericBytes::severity() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.severity)
  return severity_;
}
inline void V4GenericBytes::set_severity(::google::protobuf::int32 value) {
  set_has_severity();
  severity_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.severity)
}

// optional int32 status = 5 [default = 0];
inline bool V4GenericBytes::has_status() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void V4GenericBytes::set_has_status() {
  _has_bits_[0] |= 0x00000010u;
}
inline void V4GenericBytes::clear_has_status() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void V4GenericBytes::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::google::protobuf::int32 V4GenericBytes::status() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.status)
  return status_;
}
inline void V4GenericBytes::set_status(::google::protobuf::int32 value) {
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.status)
}

// optional uint32 repeatcount = 6;
inline bool V4GenericBytes::has_repeatcount() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void V4GenericBytes::set_has_repeatcount() {
  _has_bits_[0] |= 0x00000020u;
}
inline void V4GenericBytes::clear_has_repeatcount() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void V4GenericBytes::clear_repeatcount() {
  repeatcount_ = 0u;
  clear_has_repeatcount();
}
inline ::google::protobuf::uint32 V4GenericBytes::repeatcount() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.repeatcount)
  return repeatcount_;
}
inline void V4GenericBytes::set_repeatcount(::google::protobuf::uint32 value) {
  set_has_repeatcount();
  repeatcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.repeatcount)
}

// repeated .EPICS.FieldValue fieldvalues = 7;
inline int V4GenericBytes::fieldvalues_size() const {
  return fieldvalues_.size();
}
inline void V4GenericBytes::clear_fieldvalues() {
  fieldvalues_.Clear();
}
inline ::EPICS::FieldValue* V4GenericBytes::mutable_fieldvalues(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.V4GenericBytes.fieldvalues)
  return fieldvalues_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
V4GenericBytes::mutable_fieldvalues() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.V4GenericBytes.fieldvalues)
  return &fieldvalues_;
}
inline const ::EPICS::FieldValue& V4GenericBytes::fieldvalues(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.fieldvalues)
  return fieldvalues_.Get(index);
}
inline ::EPICS::FieldValue* V4GenericBytes::add_fieldvalues() {
  // @@protoc_insertion_point(field_add:EPICS.V4GenericBytes.fieldvalues)
  return fieldvalues_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
V4GenericBytes::fieldvalues() const {
  // @@protoc_insertion_point(field_list:EPICS.V4GenericBytes.fieldvalues)
  return fieldvalues_;
}

// optional bool fieldactualchange = 8;
inline bool V4GenericBytes::has_fieldactualchange() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void V4GenericBytes::set_has_fieldactualchange() {
  _has_bits_[0] |= 0x00000040u;
}
inline void V4GenericBytes::clear_has_fieldactualchange() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void V4GenericBytes::clear_fieldactualchange() {
  fieldactualchange_ = false;
  clear_has_fieldactualchange();
}
inline bool V4GenericBytes::fieldactualchange() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.fieldactualchange)
  return fieldactualchange_;
}
inline void V4GenericBytes::set_fieldactualchange(bool value) {
  set_has_fieldactualchange();
  fieldactualchange_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.fieldactualchange)
}

// optional uint32 userTag = 9;
inline bool V4GenericBytes::has_usertag() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
inline void V4GenericBytes::set_has_usertag() {
  _has_bits_[0] |= 0x00000080u;
}
inline void V4GenericBytes::clear_has_usertag() {
  _has_bits_[0] &= ~0x00000080u;
}
inline void V4GenericBytes::clear_usertag() {
  usertag_ = 0u;
  clear_has_usertag();
}
inline ::google::protobuf::uint32 V4GenericBytes::usertag() const {
  // @@protoc_insertion_point(field_get:EPICS.V4GenericBytes.userTag)
  return usertag_;
}
inline void V4GenericBytes::set_usertag(::google::protobuf::uint32 value) {
  set_has_usertag();
  usertag_ = value;
  // @@protoc_insertion_point(field_set:EPICS.V4GenericBytes.userTag)
}

// -------------------------------------------------------------------

// PayloadInfo

// required .EPICS.PayloadType type = 1;
inline bool PayloadInfo::has_type() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void PayloadInfo::set_has_type() {
  _has_bits_[0] |= 0x00000004u;
}
inline void PayloadInfo::clear_has_type() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void PayloadInfo::clear_type() {
  type_ = 0;
  clear_has_type();
}
inline ::EPICS::PayloadType PayloadInfo::type() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.type)
  return static_cast< ::EPICS::PayloadType >(type_);
}
inline void PayloadInfo::set_type(::EPICS::PayloadType value) {
  assert(::EPICS::PayloadType_IsValid(value));
  set_has_type();
  type_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.type)
}

// required string pvname = 2;
inline bool PayloadInfo::has_pvname() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void PayloadInfo::set_has_pvname() {
  _has_bits_[0] |= 0x00000001u;
}
inline void PayloadInfo::clear_has_pvname() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void PayloadInfo::clear_pvname() {
  pvname_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_pvname();
}
inline const ::std::string& PayloadInfo::pvname() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.pvname)
  return pvname_.GetNoArena();
}
inline void PayloadInfo::set_pvname(const ::std::string& value) {
  set_has_pvname();
  pvname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.pvname)
}
#if LANG_CXX11
inline void PayloadInfo::set_pvname(::std::string&& value) {
  set_has_pvname();
  pvname_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.PayloadInfo.pvname)
}
#endif
inline void PayloadInfo::set_pvname(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_pvname();
  pvname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.PayloadInfo.pvname)
}
inline void PayloadInfo::set_pvname(const char* value, size_t size) {
  set_has_pvname();
  pvname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.PayloadInfo.pvname)
}
inline ::std::string* PayloadInfo::mutable_pvname() {
  set_has_pvname();
  // @@protoc_insertion_point(field_mutable:EPICS.PayloadInfo.pvname)
  return pvname_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* PayloadInfo::release_pvname() {
  // @@protoc_insertion_point(field_release:EPICS.PayloadInfo.pvname)
  if (!has_pvname()) {
    return NULL;
  }
  clear_has_pvname();
  return pvname_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void PayloadInfo::set_allocated_pvname(::std::string* pvname) {
  if (pvname != NULL) {
    set_has_pvname();
  } else {
    clear_has_pvname();
  }
  pvname_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), pvname);
  // @@protoc_insertion_point(field_set_allocated:EPICS.PayloadInfo.pvname)
}

// required int32 year = 3;
inline bool PayloadInfo::has_year() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void PayloadInfo::set_has_year() {
  _has_bits_[0] |= 0x00000008u;
}
inline void PayloadInfo::clear_has_year() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void PayloadInfo::clear_year() {
  year_ = 0;
  clear_has_year();
}
inline ::google::protobuf::int32 PayloadInfo::year() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.year)
  return year_;
}
inline void PayloadInfo::set_year(::google::protobuf::int32 value) {
  set_has_year();
  year_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.year)
}

// optional int32 elementCount = 4;
inline bool PayloadInfo::has_elementcount() const {
  return (_has_bits_[0] & 0x00002000u) != 0;
}
inline void PayloadInfo::set_has_elementcount() {
  _has_bits_[0] |= 0x00002000u;
}
inline void PayloadInfo::clear_has_elementcount() {
  _has_bits_[0] &= ~0x00002000u;
}
inline void PayloadInfo::clear_elementcount() {
  elementcount_ = 0;
  clear_has_elementcount();
}
inline ::google::protobuf::int32 PayloadInfo::elementcount() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.elementCount)
  return elementcount_;
}
inline void PayloadInfo::set_elementcount(::google::protobuf::int32 value) {
  set_has_elementcount();
  elementcount_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.elementCount)
}

// optional double unused00 = 5;
inline bool PayloadInfo::has_unused00() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void PayloadInfo::set_has_unused00() {
  _has_bits_[0] |= 0x00000010u;
}
inline void PayloadInfo::clear_has_unused00() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void PayloadInfo::clear_unused00() {
  unused00_ = 0;
  clear_has_unused00();
}
inline double PayloadInfo::unused00() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused00)
  return unused00_;
}
inline void PayloadInfo::set_unused00(double value) {
  set_has_unused00();
  unused00_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused00)
}

// optional double unused01 = 6;
inline bool PayloadInfo::has_unused01() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void PayloadInfo::set_has_unused01() {
  _has_bits_[0] |= 0x00000020u;
}
inline void PayloadInfo::clear_has_unused01() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void PayloadInfo::clear_unused01() {
  unused01_ = 0;
  clear_has_unused01();
}
inline double PayloadInfo::unused01() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused01)
  return unused01_;
}
inline void PayloadInfo::set_unused01(double value) {
  set_has_unused01();
  unused01_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused01)
}

// optional double unused02 = 7;
inline bool PayloadInfo::has_unused02() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void PayloadInfo::set_has_unused02() {
  _has_bits_[0] |= 0x00000040u;
}
inline void PayloadInfo::clear_has_unused02() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void PayloadInfo::clear_unused02() {
  unused02_ = 0;
  clear_has_unused02();
}
inline double PayloadInfo::unused02() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused02)
  return unused02_;
}
inline void PayloadInfo::set_unused02(double value) {
  set_has_unused02();
  unused02_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused02)
}

// optional double unused03 = 8;
inline bool PayloadInfo::has_unused03() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
inline void PayloadInfo::set_has_unused03() {
  _has_bits_[0] |= 0x00000080u;
}
inline void PayloadInfo::clear_has_unused03() {
  _has_bits_[0] &= ~0x00000080u;
}
inline void PayloadInfo::clear_unused03() {
  unused03_ = 0;
  clear_has_unused03();
}
inline double PayloadInfo::unused03() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused03)
  return unused03_;
}
inline void PayloadInfo::set_unused03(double value) {
  set_has_unused03();
  unused03_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused03)
}

// optional double unused04 = 9;
inline bool PayloadInfo::has_unused04() const {
  return (_has_bits_[0] & 0x00000100u) != 0;
}
inline void PayloadInfo::set_has_unused04() {
  _has_bits_[0] |= 0x00000100u;
}
inline void PayloadInfo::clear_has_unused04() {
  _has_bits_[0] &= ~0x00000100u;
}
inline void PayloadInfo::clear_unused04() {
  unused04_ = 0;
  clear_has_unused04();
}
inline double PayloadInfo::unused04() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused04)
  return unused04_;
}
inline void PayloadInfo::set_unused04(double value) {
  set_has_unused04();
  unused04_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused04)
}

// optional double unused05 = 10;
inline bool PayloadInfo::has_unused05() const {
  return (_has_bits_[0] & 0x00000200u) != 0;
}
inline void PayloadInfo::set_has_unused05() {
  _has_bits_[0] |= 0x00000200u;
}
inline void PayloadInfo::clear_has_unused05() {
  _has_bits_[0] &= ~0x00000200u;
}
inline void PayloadInfo::clear_unused05() {
  unused05_ = 0;
  clear_has_unused05();
}
inline double PayloadInfo::unused05() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused05)
  return unused05_;
}
inline void PayloadInfo::set_unused05(double value) {
  set_has_unused05();
  unused05_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused05)
}

// optional double unused06 = 11;
inline bool PayloadInfo::has_unused06() const {
  return (_has_bits_[0] & 0x00000400u) != 0;
}
inline void PayloadInfo::set_has_unused06() {
  _has_bits_[0] |= 0x00000400u;
}
inline void PayloadInfo::clear_has_unused06() {
  _has_bits_[0] &= ~0x00000400u;
}
inline void PayloadInfo::clear_unused06() {
  unused06_ = 0;
  clear_has_unused06();
}
inline double PayloadInfo::unused06() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused06)
  return unused06_;
}
inline void PayloadInfo::set_unused06(double value) {
  set_has_unused06();
  unused06_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused06)
}

// optional double unused07 = 12;
inline bool PayloadInfo::has_unused07() const {
  return (_has_bits_[0] & 0x00000800u) != 0;
}
inline void PayloadInfo::set_has_unused07() {
  _has_bits_[0] |= 0x00000800u;
}
inline void PayloadInfo::clear_has_unused07() {
  _has_bits_[0] &= ~0x00000800u;
}
inline void PayloadInfo::clear_unused07() {
  unused07_ = 0;
  clear_has_unused07();
}
inline double PayloadInfo::unused07() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused07)
  return unused07_;
}
inline void PayloadInfo::set_unused07(double value) {
  set_has_unused07();
  unused07_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused07)
}

// optional double unused08 = 13;
inline bool PayloadInfo::has_unused08() const {
  return (_has_bits_[0] & 0x00001000u) != 0;
}
inline void PayloadInfo::set_has_unused08() {
  _has_bits_[0] |= 0x00001000u;
}
inline void PayloadInfo::clear_has_unused08() {
  _has_bits_[0] &= ~0x00001000u;
}
inline void PayloadInfo::clear_unused08() {
  unused08_ = 0;
  clear_has_unused08();
}
inline double PayloadInfo::unused08() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused08)
  return unused08_;
}
inline void PayloadInfo::set_unused08(double value) {
  set_has_unused08();
  unused08_ = value;
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused08)
}

// optional string unused09 = 14;
inline bool PayloadInfo::has_unused09() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void PayloadInfo::set_has_unused09() {
  _has_bits_[0] |= 0x00000002u;
}
inline void PayloadInfo::clear_has_unused09() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void PayloadInfo::clear_unused09() {
  unused09_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_unused09();
}
inline const ::std::string& PayloadInfo::unused09() const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.unused09)
  return unused09_.GetNoArena();
}
inline void PayloadInfo::set_unused09(const ::std::string& value) {
  set_has_unused09();
  unused09_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:EPICS.PayloadInfo.unused09)
}
#if LANG_CXX11
inline void PayloadInfo::set_unused09(::std::string&& value) {
  set_has_unused09();
  unused09_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:EPICS.PayloadInfo.unused09)
}
#endif
inline void PayloadInfo::set_unused09(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_unused09();
  unused09_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:EPICS.PayloadInfo.unused09)
}
inline void PayloadInfo::set_unused09(const char* value, size_t size) {
  set_has_unused09();
  unused09_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:EPICS.PayloadInfo.unused09)
}
inline ::std::string* PayloadInfo::mutable_unused09() {
  set_has_unused09();
  // @@protoc_insertion_point(field_mutable:EPICS.PayloadInfo.unused09)
  return unused09_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* PayloadInfo::release_unused09() {
  // @@protoc_insertion_point(field_release:EPICS.PayloadInfo.unused09)
  if (!has_unused09()) {
    return NULL;
  }
  clear_has_unused09();
  return unused09_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void PayloadInfo::set_allocated_unused09(::std::string* unused09) {
  if (unused09 != NULL) {
    set_has_unused09();
  } else {
    clear_has_unused09();
  }
  unused09_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), unused09);
  // @@protoc_insertion_point(field_set_allocated:EPICS.PayloadInfo.unused09)
}

// repeated .EPICS.FieldValue headers = 15;
inline int PayloadInfo::headers_size() const {
  return headers_.size();
}
inline void PayloadInfo::clear_headers() {
  headers_.Clear();
}
inline ::EPICS::FieldValue* PayloadInfo::mutable_headers(int index) {
  // @@protoc_insertion_point(field_mutable:EPICS.PayloadInfo.headers)
  return headers_.Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >*
PayloadInfo::mutable_headers() {
  // @@protoc_insertion_point(field_mutable_list:EPICS.PayloadInfo.headers)
  return &headers_;
}
inline const ::EPICS::FieldValue& PayloadInfo::headers(int index) const {
  // @@protoc_insertion_point(field_get:EPICS.PayloadInfo.headers)
  return headers_.Get(index);
}
inline ::EPICS::FieldValue* PayloadInfo::add_headers() {
  // @@protoc_insertion_point(field_add:EPICS.PayloadInfo.headers)
  return headers_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::EPICS::FieldValue >&
PayloadInfo::headers() const {
  // @@protoc_insertion_point(field_list:EPICS.PayloadInfo.headers)
  return headers_;
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------


// @@protoc_insertion_point(namespace_scope)

}  // namespace EPICS

namespace google {
namespace protobuf {

template <> struct is_proto_enum< ::EPICS::PayloadType> : ::std::true_type {};
template <>
inline const EnumDescriptor* GetEnumDescriptor< ::EPICS::PayloadType>() {
  return ::EPICS::PayloadType_descriptor();
}

}  // namespace protobuf
}  // namespace google

// @@protoc_insertion_point(global_scope)

#endif  // PROTOBUF_INCLUDED_epics_5fevent_2eproto
