// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: api/logtracer/client/v1/tracer.proto

#ifndef GOOGLE_PROTOBUF_INCLUDED_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto
#define GOOGLE_PROTOBUF_INCLUDED_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto

#include <limits>
#include <string>


#include <herogoogle/protobuf/stubs/common.h>
#if GOOGLE_PROTOBUF_VERSION < 3018000
#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 3018000 < 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 <herogoogle/protobuf/io/coded_stream.h>
#include <herogoogle/protobuf/arena.h>
#include <herogoogle/protobuf/arenastring.h>
#include <herogoogle/protobuf/generated_message_table_driven.h>
#include <herogoogle/protobuf/generated_message_util.h>
#include <herogoogle/protobuf/metadata_lite.h>
#include <herogoogle/protobuf/message_lite.h>
#include <herogoogle/protobuf/repeated_field.h>  // IWYU pragma: export
#include <herogoogle/protobuf/extension_set.h>  // IWYU pragma: export
#include <herogoogle/protobuf/generated_enum_util.h>
// #include "google/api/annotations.pb.h"
// #include "validate/validate.pb.h"
// @@protoc_insertion_point(includes)

#define PROTOBUF_INTERNAL_EXPORT_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto
PROTOBUF_NAMESPACE_OPEN
namespace internal {
class AnyMetadata;
}  // namespace internal
PROTOBUF_NAMESPACE_CLOSE

// Internal implementation detail -- do not use these members.
struct TableStruct_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto {
  static const ::herogoogle::protobuf::internal::ParseTableField entries[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::AuxiliaryParseTableField aux[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::ParseTable schema[3]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::herogoogle::protobuf::internal::FieldMetadata field_metadata[];
  static const ::herogoogle::protobuf::internal::SerializationTable serialization_table[];
  static const ::herogoogle::protobuf::uint32 offsets[];
};
namespace logtracer {
namespace client {
namespace v1 {
class LogReportItem;
struct LogReportItemDefaultTypeInternal;
extern LogReportItemDefaultTypeInternal _LogReportItem_default_instance_;
class LogReportRequest;
struct LogReportRequestDefaultTypeInternal;
extern LogReportRequestDefaultTypeInternal _LogReportRequest_default_instance_;
class LogReportResponse;
struct LogReportResponseDefaultTypeInternal;
extern LogReportResponseDefaultTypeInternal _LogReportResponse_default_instance_;
}  // namespace v1
}  // namespace client
}  // namespace logtracer
PROTOBUF_NAMESPACE_OPEN
template<> ::logtracer::client::v1::LogReportItem* Arena::CreateMaybeMessage<::logtracer::client::v1::LogReportItem>(Arena*);
template<> ::logtracer::client::v1::LogReportRequest* Arena::CreateMaybeMessage<::logtracer::client::v1::LogReportRequest>(Arena*);
template<> ::logtracer::client::v1::LogReportResponse* Arena::CreateMaybeMessage<::logtracer::client::v1::LogReportResponse>(Arena*);
PROTOBUF_NAMESPACE_CLOSE
namespace logtracer {
namespace client {
namespace v1 {

enum LogLevel : int {
  LEVEL_INFO = 0,
  LEVEL_DEBUG = 1,
  LEVEL_WARN = 2,
  LEVEL_ERROR = 3,
  LEVEL_FATAL = 4,
  LogLevel_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::herogoogle::protobuf::int32>::min(),
  LogLevel_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::herogoogle::protobuf::int32>::max()
};
bool LogLevel_IsValid(int value);
constexpr LogLevel LogLevel_MIN = LEVEL_INFO;
constexpr LogLevel LogLevel_MAX = LEVEL_FATAL;
constexpr int LogLevel_ARRAYSIZE = LogLevel_MAX + 1;

const std::string& LogLevel_Name(LogLevel value);
template<typename T>
inline const std::string& LogLevel_Name(T enum_t_value) {
  static_assert(::std::is_same<T, LogLevel>::value ||
    ::std::is_integral<T>::value,
    "Incorrect type passed to function LogLevel_Name.");
  return LogLevel_Name(static_cast<LogLevel>(enum_t_value));
}
bool LogLevel_Parse(
    ::herogoogle::protobuf::ConstStringParam name, LogLevel* value);
// ===================================================================

class LogReportRequest final :
    public ::herogoogle::protobuf::MessageLite /* @@protoc_insertion_point(class_definition:logtracer.client.v1.LogReportRequest) */ {
 public:
  inline LogReportRequest() : LogReportRequest(nullptr) {}
  ~LogReportRequest() override;
  explicit constexpr LogReportRequest(::herogoogle::protobuf::internal::ConstantInitialized);

  LogReportRequest(const LogReportRequest& from);
  LogReportRequest(LogReportRequest&& from) noexcept
    : LogReportRequest() {
    *this = ::std::move(from);
  }

  inline LogReportRequest& operator=(const LogReportRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline LogReportRequest& operator=(LogReportRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const LogReportRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const LogReportRequest* internal_default_instance() {
    return reinterpret_cast<const LogReportRequest*>(
               &_LogReportRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  friend void swap(LogReportRequest& a, LogReportRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(LogReportRequest* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(LogReportRequest* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline LogReportRequest* New() const final {
    return new LogReportRequest();
  }

  LogReportRequest* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<LogReportRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::herogoogle::protobuf::MessageLite& from)  final;
  void CopyFrom(const LogReportRequest& from);
  void MergeFrom(const LogReportRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  void DiscardUnknownFields();
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(LogReportRequest* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "logtracer.client.v1.LogReportRequest";
  }
  protected:
  explicit LogReportRequest(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  std::string GetTypeName() const final;

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

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

  enum : int {
    kItemsFieldNumber = 2,
    kDeviceIdFieldNumber = 1,
  };
  // repeated .logtracer.client.v1.LogReportItem items = 2 [(.validate.rules) = {
  int items_size() const;
  private:
  int _internal_items_size() const;
  public:
  void clear_items();
  ::logtracer::client::v1::LogReportItem* mutable_items(int index);
  ::herogoogle::protobuf::RepeatedPtrField< ::logtracer::client::v1::LogReportItem >*
      mutable_items();
  private:
  const ::logtracer::client::v1::LogReportItem& _internal_items(int index) const;
  ::logtracer::client::v1::LogReportItem* _internal_add_items();
  public:
  const ::logtracer::client::v1::LogReportItem& items(int index) const;
  ::logtracer::client::v1::LogReportItem* add_items();
  const ::herogoogle::protobuf::RepeatedPtrField< ::logtracer::client::v1::LogReportItem >&
      items() const;

  // string device_id = 1 [(.validate.rules) = {
  void clear_device_id();
  const std::string& device_id() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_device_id(ArgT0&& arg0, ArgT... args);
  std::string* mutable_device_id();
  PROTOBUF_MUST_USE_RESULT std::string* release_device_id();
  void set_allocated_device_id(std::string* device_id);
  private:
  const std::string& _internal_device_id() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_device_id(const std::string& value);
  std::string* _internal_mutable_device_id();
  public:

  // @@protoc_insertion_point(class_scope:logtracer.client.v1.LogReportRequest)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::RepeatedPtrField< ::logtracer::client::v1::LogReportItem > items_;
  ::herogoogle::protobuf::internal::ArenaStringPtr device_id_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto;
};
// -------------------------------------------------------------------

class LogReportItem final :
    public ::herogoogle::protobuf::MessageLite /* @@protoc_insertion_point(class_definition:logtracer.client.v1.LogReportItem) */ {
 public:
  inline LogReportItem() : LogReportItem(nullptr) {}
  ~LogReportItem() override;
  explicit constexpr LogReportItem(::herogoogle::protobuf::internal::ConstantInitialized);

  LogReportItem(const LogReportItem& from);
  LogReportItem(LogReportItem&& from) noexcept
    : LogReportItem() {
    *this = ::std::move(from);
  }

  inline LogReportItem& operator=(const LogReportItem& from) {
    CopyFrom(from);
    return *this;
  }
  inline LogReportItem& operator=(LogReportItem&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const LogReportItem& default_instance() {
    return *internal_default_instance();
  }
  static inline const LogReportItem* internal_default_instance() {
    return reinterpret_cast<const LogReportItem*>(
               &_LogReportItem_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  friend void swap(LogReportItem& a, LogReportItem& b) {
    a.Swap(&b);
  }
  inline void Swap(LogReportItem* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(LogReportItem* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline LogReportItem* New() const final {
    return new LogReportItem();
  }

  LogReportItem* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<LogReportItem>(arena);
  }
  void CheckTypeAndMergeFrom(const ::herogoogle::protobuf::MessageLite& from)  final;
  void CopyFrom(const LogReportItem& from);
  void MergeFrom(const LogReportItem& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  void DiscardUnknownFields();
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(LogReportItem* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "logtracer.client.v1.LogReportItem";
  }
  protected:
  explicit LogReportItem(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  std::string GetTypeName() const final;

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

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

  enum : int {
    kAccountIdFieldNumber = 2,
    kLogTypeFieldNumber = 4,
    kContentFieldNumber = 5,
    kTimestampFieldNumber = 1,
    kLevelFieldNumber = 3,
  };
  // string account_id = 2;
  void clear_account_id();
  const std::string& account_id() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_account_id(ArgT0&& arg0, ArgT... args);
  std::string* mutable_account_id();
  PROTOBUF_MUST_USE_RESULT std::string* release_account_id();
  void set_allocated_account_id(std::string* account_id);
  private:
  const std::string& _internal_account_id() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_account_id(const std::string& value);
  std::string* _internal_mutable_account_id();
  public:

  // string log_type = 4;
  void clear_log_type();
  const std::string& log_type() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_log_type(ArgT0&& arg0, ArgT... args);
  std::string* mutable_log_type();
  PROTOBUF_MUST_USE_RESULT std::string* release_log_type();
  void set_allocated_log_type(std::string* log_type);
  private:
  const std::string& _internal_log_type() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_log_type(const std::string& value);
  std::string* _internal_mutable_log_type();
  public:

  // string content = 5 [(.validate.rules) = {
  void clear_content();
  const std::string& content() const;
  template <typename ArgT0 = const std::string&, typename... ArgT>
  void set_content(ArgT0&& arg0, ArgT... args);
  std::string* mutable_content();
  PROTOBUF_MUST_USE_RESULT std::string* release_content();
  void set_allocated_content(std::string* content);
  private:
  const std::string& _internal_content() const;
  inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE void _internal_set_content(const std::string& value);
  std::string* _internal_mutable_content();
  public:

  // int64 timestamp = 1;
  void clear_timestamp();
  ::herogoogle::protobuf::int64 timestamp() const;
  void set_timestamp(::herogoogle::protobuf::int64 value);
  private:
  ::herogoogle::protobuf::int64 _internal_timestamp() const;
  void _internal_set_timestamp(::herogoogle::protobuf::int64 value);
  public:

  // .logtracer.client.v1.LogLevel level = 3;
  void clear_level();
  ::logtracer::client::v1::LogLevel level() const;
  void set_level(::logtracer::client::v1::LogLevel value);
  private:
  ::logtracer::client::v1::LogLevel _internal_level() const;
  void _internal_set_level(::logtracer::client::v1::LogLevel value);
  public:

  // @@protoc_insertion_point(class_scope:logtracer.client.v1.LogReportItem)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  ::herogoogle::protobuf::internal::ArenaStringPtr account_id_;
  ::herogoogle::protobuf::internal::ArenaStringPtr log_type_;
  ::herogoogle::protobuf::internal::ArenaStringPtr content_;
  ::herogoogle::protobuf::int64 timestamp_;
  int level_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto;
};
// -------------------------------------------------------------------

class LogReportResponse final :
    public ::herogoogle::protobuf::MessageLite /* @@protoc_insertion_point(class_definition:logtracer.client.v1.LogReportResponse) */ {
 public:
  inline LogReportResponse() : LogReportResponse(nullptr) {}
  ~LogReportResponse() override;
  explicit constexpr LogReportResponse(::herogoogle::protobuf::internal::ConstantInitialized);

  LogReportResponse(const LogReportResponse& from);
  LogReportResponse(LogReportResponse&& from) noexcept
    : LogReportResponse() {
    *this = ::std::move(from);
  }

  inline LogReportResponse& operator=(const LogReportResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline LogReportResponse& operator=(LogReportResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const LogReportResponse& default_instance() {
    return *internal_default_instance();
  }
  static inline const LogReportResponse* internal_default_instance() {
    return reinterpret_cast<const LogReportResponse*>(
               &_LogReportResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  friend void swap(LogReportResponse& a, LogReportResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(LogReportResponse* other) {
    if (other == this) return;
    if (GetOwningArena() == other->GetOwningArena()) {
      InternalSwap(other);
    } else {
      ::herogoogle::protobuf::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(LogReportResponse* other) {
    if (other == this) return;
    GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  inline LogReportResponse* New() const final {
    return new LogReportResponse();
  }

  LogReportResponse* New(::herogoogle::protobuf::Arena* arena) const final {
    return CreateMaybeMessage<LogReportResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::herogoogle::protobuf::MessageLite& from)  final;
  void CopyFrom(const LogReportResponse& from);
  void MergeFrom(const LogReportResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::herogoogle::protobuf::internal::ParseContext* ctx) final;
  ::herogoogle::protobuf::uint8* _InternalSerialize(
      ::herogoogle::protobuf::uint8* target, ::herogoogle::protobuf::io::EpsCopyOutputStream* stream) const final;
  void DiscardUnknownFields();
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(LogReportResponse* other);
  friend class ::herogoogle::protobuf::internal::AnyMetadata;
  static ::herogoogle::protobuf::StringPiece FullMessageName() {
    return "logtracer.client.v1.LogReportResponse";
  }
  protected:
  explicit LogReportResponse(::herogoogle::protobuf::Arena* arena,
                       bool is_message_owned = false);
  private:
  static void ArenaDtor(void* object);
  inline void RegisterArenaDtor(::herogoogle::protobuf::Arena* arena);
  public:

  std::string GetTypeName() const final;

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

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

  // @@protoc_insertion_point(class_scope:logtracer.client.v1.LogReportResponse)
 private:
  class _Internal;

  template <typename T> friend class ::herogoogle::protobuf::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  mutable ::herogoogle::protobuf::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto;
};
// ===================================================================


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

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

// string device_id = 1 [(.validate.rules) = {
inline void LogReportRequest::clear_device_id() {
  device_id_.ClearToEmpty();
}
inline const std::string& LogReportRequest::device_id() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportRequest.device_id)
  return _internal_device_id();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void LogReportRequest::set_device_id(ArgT0&& arg0, ArgT... args) {
 
 device_id_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportRequest.device_id)
}
inline std::string* LogReportRequest::mutable_device_id() {
  std::string* _s = _internal_mutable_device_id();
  // @@protoc_insertion_point(field_mutable:logtracer.client.v1.LogReportRequest.device_id)
  return _s;
}
inline const std::string& LogReportRequest::_internal_device_id() const {
  return device_id_.Get();
}
inline void LogReportRequest::_internal_set_device_id(const std::string& value) {
  
  device_id_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* LogReportRequest::_internal_mutable_device_id() {
  
  return device_id_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* LogReportRequest::release_device_id() {
  // @@protoc_insertion_point(field_release:logtracer.client.v1.LogReportRequest.device_id)
  return device_id_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void LogReportRequest::set_allocated_device_id(std::string* device_id) {
  if (device_id != nullptr) {
    
  } else {
    
  }
  device_id_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), device_id,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:logtracer.client.v1.LogReportRequest.device_id)
}

// repeated .logtracer.client.v1.LogReportItem items = 2 [(.validate.rules) = {
inline int LogReportRequest::_internal_items_size() const {
  return items_.size();
}
inline int LogReportRequest::items_size() const {
  return _internal_items_size();
}
inline void LogReportRequest::clear_items() {
  items_.Clear();
}
inline ::logtracer::client::v1::LogReportItem* LogReportRequest::mutable_items(int index) {
  // @@protoc_insertion_point(field_mutable:logtracer.client.v1.LogReportRequest.items)
  return items_.Mutable(index);
}
inline ::herogoogle::protobuf::RepeatedPtrField< ::logtracer::client::v1::LogReportItem >*
LogReportRequest::mutable_items() {
  // @@protoc_insertion_point(field_mutable_list:logtracer.client.v1.LogReportRequest.items)
  return &items_;
}
inline const ::logtracer::client::v1::LogReportItem& LogReportRequest::_internal_items(int index) const {
  return items_.Get(index);
}
inline const ::logtracer::client::v1::LogReportItem& LogReportRequest::items(int index) const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportRequest.items)
  return _internal_items(index);
}
inline ::logtracer::client::v1::LogReportItem* LogReportRequest::_internal_add_items() {
  return items_.Add();
}
inline ::logtracer::client::v1::LogReportItem* LogReportRequest::add_items() {
  ::logtracer::client::v1::LogReportItem* _add = _internal_add_items();
  // @@protoc_insertion_point(field_add:logtracer.client.v1.LogReportRequest.items)
  return _add;
}
inline const ::herogoogle::protobuf::RepeatedPtrField< ::logtracer::client::v1::LogReportItem >&
LogReportRequest::items() const {
  // @@protoc_insertion_point(field_list:logtracer.client.v1.LogReportRequest.items)
  return items_;
}

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

// LogReportItem

// int64 timestamp = 1;
inline void LogReportItem::clear_timestamp() {
  timestamp_ = int64_t{0};
}
inline ::herogoogle::protobuf::int64 LogReportItem::_internal_timestamp() const {
  return timestamp_;
}
inline ::herogoogle::protobuf::int64 LogReportItem::timestamp() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportItem.timestamp)
  return _internal_timestamp();
}
inline void LogReportItem::_internal_set_timestamp(::herogoogle::protobuf::int64 value) {
  
  timestamp_ = value;
}
inline void LogReportItem::set_timestamp(::herogoogle::protobuf::int64 value) {
  _internal_set_timestamp(value);
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportItem.timestamp)
}

// string account_id = 2;
inline void LogReportItem::clear_account_id() {
  account_id_.ClearToEmpty();
}
inline const std::string& LogReportItem::account_id() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportItem.account_id)
  return _internal_account_id();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void LogReportItem::set_account_id(ArgT0&& arg0, ArgT... args) {
 
 account_id_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportItem.account_id)
}
inline std::string* LogReportItem::mutable_account_id() {
  std::string* _s = _internal_mutable_account_id();
  // @@protoc_insertion_point(field_mutable:logtracer.client.v1.LogReportItem.account_id)
  return _s;
}
inline const std::string& LogReportItem::_internal_account_id() const {
  return account_id_.Get();
}
inline void LogReportItem::_internal_set_account_id(const std::string& value) {
  
  account_id_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* LogReportItem::_internal_mutable_account_id() {
  
  return account_id_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* LogReportItem::release_account_id() {
  // @@protoc_insertion_point(field_release:logtracer.client.v1.LogReportItem.account_id)
  return account_id_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void LogReportItem::set_allocated_account_id(std::string* account_id) {
  if (account_id != nullptr) {
    
  } else {
    
  }
  account_id_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), account_id,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:logtracer.client.v1.LogReportItem.account_id)
}

// .logtracer.client.v1.LogLevel level = 3;
inline void LogReportItem::clear_level() {
  level_ = 0;
}
inline ::logtracer::client::v1::LogLevel LogReportItem::_internal_level() const {
  return static_cast< ::logtracer::client::v1::LogLevel >(level_);
}
inline ::logtracer::client::v1::LogLevel LogReportItem::level() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportItem.level)
  return _internal_level();
}
inline void LogReportItem::_internal_set_level(::logtracer::client::v1::LogLevel value) {
  
  level_ = value;
}
inline void LogReportItem::set_level(::logtracer::client::v1::LogLevel value) {
  _internal_set_level(value);
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportItem.level)
}

// string log_type = 4;
inline void LogReportItem::clear_log_type() {
  log_type_.ClearToEmpty();
}
inline const std::string& LogReportItem::log_type() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportItem.log_type)
  return _internal_log_type();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void LogReportItem::set_log_type(ArgT0&& arg0, ArgT... args) {
 
 log_type_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportItem.log_type)
}
inline std::string* LogReportItem::mutable_log_type() {
  std::string* _s = _internal_mutable_log_type();
  // @@protoc_insertion_point(field_mutable:logtracer.client.v1.LogReportItem.log_type)
  return _s;
}
inline const std::string& LogReportItem::_internal_log_type() const {
  return log_type_.Get();
}
inline void LogReportItem::_internal_set_log_type(const std::string& value) {
  
  log_type_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* LogReportItem::_internal_mutable_log_type() {
  
  return log_type_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* LogReportItem::release_log_type() {
  // @@protoc_insertion_point(field_release:logtracer.client.v1.LogReportItem.log_type)
  return log_type_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void LogReportItem::set_allocated_log_type(std::string* log_type) {
  if (log_type != nullptr) {
    
  } else {
    
  }
  log_type_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), log_type,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:logtracer.client.v1.LogReportItem.log_type)
}

// string content = 5 [(.validate.rules) = {
inline void LogReportItem::clear_content() {
  content_.ClearToEmpty();
}
inline const std::string& LogReportItem::content() const {
  // @@protoc_insertion_point(field_get:logtracer.client.v1.LogReportItem.content)
  return _internal_content();
}
template <typename ArgT0, typename... ArgT>
inline GOOGLE_PROTOBUF_ATTRIBUTE_ALWAYS_INLINE
void LogReportItem::set_content(ArgT0&& arg0, ArgT... args) {
 
 content_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:logtracer.client.v1.LogReportItem.content)
}
inline std::string* LogReportItem::mutable_content() {
  std::string* _s = _internal_mutable_content();
  // @@protoc_insertion_point(field_mutable:logtracer.client.v1.LogReportItem.content)
  return _s;
}
inline const std::string& LogReportItem::_internal_content() const {
  return content_.Get();
}
inline void LogReportItem::_internal_set_content(const std::string& value) {
  
  content_.Set(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation());
}
inline std::string* LogReportItem::_internal_mutable_content() {
  
  return content_.Mutable(::herogoogle::protobuf::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation());
}
inline std::string* LogReportItem::release_content() {
  // @@protoc_insertion_point(field_release:logtracer.client.v1.LogReportItem.content)
  return content_.Release(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation());
}
inline void LogReportItem::set_allocated_content(std::string* content) {
  if (content != nullptr) {
    
  } else {
    
  }
  content_.SetAllocated(&::herogoogle::protobuf::internal::GetEmptyStringAlreadyInited(), content,
      GetArenaForAllocation());
  // @@protoc_insertion_point(field_set_allocated:logtracer.client.v1.LogReportItem.content)
}

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

// LogReportResponse

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

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


// @@protoc_insertion_point(namespace_scope)

}  // namespace v1
}  // namespace client
}  // namespace logtracer

PROTOBUF_NAMESPACE_OPEN

template <> struct is_proto_enum< ::logtracer::client::v1::LogLevel> : ::std::true_type {};

PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)


#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_api_2flogtracer_2fclient_2fv1_2ftracer_2eproto
