/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: stats.proto */

#ifndef PROTOBUF_C_stats_2eproto__INCLUDED
#define PROTOBUF_C_stats_2eproto__INCLUDED

#include <protobuf-c/protobuf-c.h>

PROTOBUF_C__BEGIN_DECLS

#if PROTOBUF_C_VERSION_NUMBER < 1003000
# error This file was generated by a newer version of protobuf-c which is incompatible with your libprotobuf-c headers. Please update your headers.
#elif 1005002 < PROTOBUF_C_MIN_COMPILER_VERSION
# error This file was generated by an older version of protobuf-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protobuf-c.
#endif


typedef struct DumpStatsEntry DumpStatsEntry;
typedef struct RestoreStatsEntry RestoreStatsEntry;
typedef struct StatsEntry StatsEntry;


/* --- enums --- */


/* --- messages --- */

/*
 * This one contains statistics about dump/restore process
 */
struct  DumpStatsEntry
{
  ProtobufCMessage base;
  uint32_t freezing_time;
  uint32_t frozen_time;
  uint32_t memdump_time;
  uint32_t memwrite_time;
  uint64_t pages_scanned;
  uint64_t pages_skipped_parent;
  uint64_t pages_written;
  protobuf_c_boolean has_irmap_resolve;
  uint32_t irmap_resolve;
  uint64_t pages_lazy;
  protobuf_c_boolean has_page_pipes;
  uint64_t page_pipes;
  protobuf_c_boolean has_page_pipe_bufs;
  uint64_t page_pipe_bufs;
  protobuf_c_boolean has_shpages_scanned;
  uint64_t shpages_scanned;
  protobuf_c_boolean has_shpages_skipped_parent;
  uint64_t shpages_skipped_parent;
  protobuf_c_boolean has_shpages_written;
  uint64_t shpages_written;
};
#define DUMP_STATS_ENTRY__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&dump_stats_entry__descriptor) \
, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }


struct  RestoreStatsEntry
{
  ProtobufCMessage base;
  uint64_t pages_compared;
  uint64_t pages_skipped_cow;
  uint32_t forking_time;
  uint32_t restore_time;
  protobuf_c_boolean has_pages_restored;
  uint64_t pages_restored;
};
#define RESTORE_STATS_ENTRY__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&restore_stats_entry__descriptor) \
, 0, 0, 0, 0, 0, 0 }


struct  StatsEntry
{
  ProtobufCMessage base;
  DumpStatsEntry *dump;
  RestoreStatsEntry *restore;
};
#define STATS_ENTRY__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&stats_entry__descriptor) \
, NULL, NULL }


/* DumpStatsEntry methods */
void   dump_stats_entry__init
                     (DumpStatsEntry         *message);
size_t dump_stats_entry__get_packed_size
                     (const DumpStatsEntry   *message);
size_t dump_stats_entry__pack
                     (const DumpStatsEntry   *message,
                      uint8_t             *out);
size_t dump_stats_entry__pack_to_buffer
                     (const DumpStatsEntry   *message,
                      ProtobufCBuffer     *buffer);
DumpStatsEntry *
       dump_stats_entry__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   dump_stats_entry__free_unpacked
                     (DumpStatsEntry *message,
                      ProtobufCAllocator *allocator);
/* RestoreStatsEntry methods */
void   restore_stats_entry__init
                     (RestoreStatsEntry         *message);
size_t restore_stats_entry__get_packed_size
                     (const RestoreStatsEntry   *message);
size_t restore_stats_entry__pack
                     (const RestoreStatsEntry   *message,
                      uint8_t             *out);
size_t restore_stats_entry__pack_to_buffer
                     (const RestoreStatsEntry   *message,
                      ProtobufCBuffer     *buffer);
RestoreStatsEntry *
       restore_stats_entry__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   restore_stats_entry__free_unpacked
                     (RestoreStatsEntry *message,
                      ProtobufCAllocator *allocator);
/* StatsEntry methods */
void   stats_entry__init
                     (StatsEntry         *message);
size_t stats_entry__get_packed_size
                     (const StatsEntry   *message);
size_t stats_entry__pack
                     (const StatsEntry   *message,
                      uint8_t             *out);
size_t stats_entry__pack_to_buffer
                     (const StatsEntry   *message,
                      ProtobufCBuffer     *buffer);
StatsEntry *
       stats_entry__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   stats_entry__free_unpacked
                     (StatsEntry *message,
                      ProtobufCAllocator *allocator);
/* --- per-message closures --- */

typedef void (*DumpStatsEntry_Closure)
                 (const DumpStatsEntry *message,
                  void *closure_data);
typedef void (*RestoreStatsEntry_Closure)
                 (const RestoreStatsEntry *message,
                  void *closure_data);
typedef void (*StatsEntry_Closure)
                 (const StatsEntry *message,
                  void *closure_data);

/* --- services --- */


/* --- descriptors --- */

extern const ProtobufCMessageDescriptor dump_stats_entry__descriptor;
extern const ProtobufCMessageDescriptor restore_stats_entry__descriptor;
extern const ProtobufCMessageDescriptor stats_entry__descriptor;

PROTOBUF_C__END_DECLS


#endif  /* PROTOBUF_C_stats_2eproto__INCLUDED */
