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

#ifndef PROTOBUF_C_device_5frequest_2eproto__INCLUDED
#define PROTOBUF_C_device_5frequest_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 protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
#elif 1005000 < PROTOBUF_C_MIN_COMPILER_VERSION
# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
#endif


typedef struct Logi__Device__Proto__RebootSchedule Logi__Device__Proto__RebootSchedule;
typedef struct Logi__Device__Proto__RebootDeviceRequest Logi__Device__Proto__RebootDeviceRequest;
typedef struct Logi__Device__Proto__RebootDeviceResponse Logi__Device__Proto__RebootDeviceResponse;
typedef struct Logi__Device__Proto__SetSpeakerBoostRequest Logi__Device__Proto__SetSpeakerBoostRequest;
typedef struct Logi__Device__Proto__SetSpeakerBoostResponse Logi__Device__Proto__SetSpeakerBoostResponse;
typedef struct Logi__Device__Proto__SetNoiseReductionRequest Logi__Device__Proto__SetNoiseReductionRequest;
typedef struct Logi__Device__Proto__SetNoiseReductionResponse Logi__Device__Proto__SetNoiseReductionResponse;
typedef struct Logi__Device__Proto__SetReverbModeRequest Logi__Device__Proto__SetReverbModeRequest;
typedef struct Logi__Device__Proto__SetReverbModeResponse Logi__Device__Proto__SetReverbModeResponse;
typedef struct Logi__Device__Proto__SetMicEQModeRequest Logi__Device__Proto__SetMicEQModeRequest;
typedef struct Logi__Device__Proto__SetMicEQModeResponse Logi__Device__Proto__SetMicEQModeResponse;
typedef struct Logi__Device__Proto__SetSpeakerEQModeRequest Logi__Device__Proto__SetSpeakerEQModeRequest;
typedef struct Logi__Device__Proto__SetSpeakerEQModeResponse Logi__Device__Proto__SetSpeakerEQModeResponse;
typedef struct Logi__Device__Proto__ForgetDeviceRequest Logi__Device__Proto__ForgetDeviceRequest;
typedef struct Logi__Device__Proto__ForgetDeviceResponse Logi__Device__Proto__ForgetDeviceResponse;


/* --- enums --- */

/*
 **
 * Reverb mode enumeration
 */
typedef enum _Logi__Device__Proto__SetReverbModeRequest__ReverbMode {
  LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE__DISABLED = 0,
  LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE__MILD = 1,
  LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE__NORMAL = 2,
  LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE__AGGRESSIVE = 3
    PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE)
} Logi__Device__Proto__SetReverbModeRequest__ReverbMode;
/*
 **
 * MicEQ mode enumeration
 */
typedef enum _Logi__Device__Proto__SetMicEQModeRequest__MicEQMode {
  LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__MIC_EQMODE__BASSBOOST = 0,
  LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__MIC_EQMODE__NORMAL = 1,
  LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__MIC_EQMODE__VOICEBOOST = 2
    PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__MIC_EQMODE)
} Logi__Device__Proto__SetMicEQModeRequest__MicEQMode;
/*
 **
 * SpeakerEQ mode enumeration
 */
typedef enum _Logi__Device__Proto__SetSpeakerEQModeRequest__SpeakerEQMode {
  LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__SPEAKER_EQMODE__BASSBOOST = 0,
  LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__SPEAKER_EQMODE__NORMAL = 1,
  LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__SPEAKER_EQMODE__VOICEBOOST = 2
    PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__SPEAKER_EQMODE)
} Logi__Device__Proto__SetSpeakerEQModeRequest__SpeakerEQMode;

/* --- messages --- */

/*
 **
 * For reboot schedule request defined here
 * https://docs.google.com/document/d/10pG89Cw_siDvnmsKxdLQqutIqegH6ouSnMon_G28Nyc/edit#bookmark=id.k0bz8vzzaj9
 */
struct  Logi__Device__Proto__RebootSchedule
{
  ProtobufCMessage base;
  /*
   **
   * The time to reboot.
   * If this is empty and ts is non-zero, it means to clear the reboot schedule
   */
  char *when;
  /*
   **
   * repeat mode defined here
   * https://docs.google.com/document/d/1yQp8Ju82bDuVfHmprP_5ToUJbitK7kOjmj_71Cqc-do/edit#heading=h.k8yyuyddqj1v
   */
  uint32_t repeat;
  /*
   **
   * timestamp the schedule request was made
   */
  uint64_t ts;
};
#define LOGI__DEVICE__PROTO__REBOOT_SCHEDULE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__reboot_schedule__descriptor) \
, (char *)protobuf_c_empty_string, 0, 0 }


/*
 **
 * Request to reboot device
 * This is to be included in UsbMsg
 * After the device receives this, the device should send a response,
 * followed by an mqtt event that conforms to device reboot or
 * schedule reboot defined here
 * https://docs.google.com/document/d/10pG89Cw_siDvnmsKxdLQqutIqegH6ouSnMon_G28Nyc/edit#bookmark=id.zcy4ldnyuij
 * and
 * https://docs.google.com/document/d/10pG89Cw_siDvnmsKxdLQqutIqegH6ouSnMon_G28Nyc/edit#bookmark=id.k0bz8vzzaj9
 * EXPECTED RESPONSE
 * RebootDeviceResponse
 */
struct  Logi__Device__Proto__RebootDeviceRequest
{
  ProtobufCMessage base;
  /*
   **
   * Unused. Reserved for future use.
   */
  protobuf_c_boolean reserved;
  /*
   **
   *  A timestamp indicating when the reboot request
   *	was initiated.
   *  The device should include this entry as part of the event information
   *   it sends back to PC during a reboot request.
   */
  uint64_t iat;
  /*
   **
   * (REQUIRED)Reboot strategy defined in
   * https://docs.google.com/document/d/10pG89Cw_siDvnmsKxdLQqutIqegH6ouSnMon_G28Nyc/edit#
   */
  uint32_t strategy;
  /*
   **
   * (REQUIRED) Same behavior as in Raiden Backend API
   */
  protobuf_c_boolean rebootnow;
  /*
   **
   * (OPTIONAL) Same behavior as in Raiden Backend API
   */
  Logi__Device__Proto__RebootSchedule *schedule;
  /*
   **
   * (REQUIRED) For device to distinguish between older request and new one that
   *   support schedule reboot.
   *   This defaults to 0 for older Sync app.  Sync app that supports
   *   schedule reboot will pass with value 1.
   */
  uint32_t version;
  /*
   **
   * (OPTIONAL)
   *  serial number of the intended recipient of the command.
   *  If empty, the receiver should handle the command as the intended recipient. This also
   * handles backward compatibility with older Sync app where serial number is not defined.
   *  Behavior for host and peripheral device: if command is for host device, host will
   * handle command and forward the command to peripheral device as well.  If for peripheral
   * device, host will just forward command to peripheral device.
   */
  char *serial_number;
};
#define LOGI__DEVICE__PROTO__REBOOT_DEVICE_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__reboot_device_request__descriptor) \
, 0, 0, 0, 0, NULL, 0, (char *)protobuf_c_empty_string }


/*
 **
 * Reboot device response
 */
struct  Logi__Device__Proto__RebootDeviceResponse
{
  ProtobufCMessage base;
  /*
   **
   * bool value to indicate reboot was requested.  If there are errors
   * while requesting a device to reboot, should set the value to false
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__REBOOT_DEVICE_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__reboot_device_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the speaker boost audio setting be changed.
 * The device should send a device info event after this setting request are handled.
 * EXPECTED RESPONSE
 * SetSpeakerBoostResponse
 */
struct  Logi__Device__Proto__SetSpeakerBoostRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The speaker boost setting to be set
   * If value is 0, the request is to disable.  If 1,
   * the request is to enable.
   */
  int32_t speaker_boost;
};
#define LOGI__DEVICE__PROTO__SET_SPEAKER_BOOST_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_speaker_boost_request__descriptor) \
, 0 }


struct  Logi__Device__Proto__SetSpeakerBoostResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if the audio setting request was successfully sent, false
   * otherwise
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__SET_SPEAKER_BOOST_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_speaker_boost_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the noise reduction audio setting be changed.
 * The device should send a device info event after this setting request are handled.
 * EXPECTED RESPONSE
 * SetNoiseReductionResponse
 */
struct  Logi__Device__Proto__SetNoiseReductionRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The noise reduction setting to be set
   * If value is 0, the request is to disable.  If 1,
   * the request is to enable.
   */
  int32_t noise_reduction;
};
#define LOGI__DEVICE__PROTO__SET_NOISE_REDUCTION_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_noise_reduction_request__descriptor) \
, 0 }


struct  Logi__Device__Proto__SetNoiseReductionResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if the audio setting request was successfully sent, false
   * otherwise
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__SET_NOISE_REDUCTION_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_noise_reduction_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the reverb mode audio setting be changed.
 * The device should send a device info event after this setting request are handled.
 * EXPECTED RESPONSE
 * SetReverbModeResponse
 */
struct  Logi__Device__Proto__SetReverbModeRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The reverb mode setting to be set
   *  see Reverb mode enumeration
   */
  Logi__Device__Proto__SetReverbModeRequest__ReverbMode reverb_mode;
};
#define LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_reverb_mode_request__descriptor) \
, LOGI__DEVICE__PROTO__SET_REVERB_MODE_REQUEST__REVERB_MODE__DISABLED }


struct  Logi__Device__Proto__SetReverbModeResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if the setting request was successfully sent, false otherwise
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__SET_REVERB_MODE_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_reverb_mode_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the microphone eq mode audio setting be changed.
 * The device should send a device info event after this setting request are handled.
 * EXPECTED RESPONSE
 * SetMicEQModeResponse
 */
struct  Logi__Device__Proto__SetMicEQModeRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The microphone eq setting to be set
   *  see MicEQ mode enumeration
   */
  Logi__Device__Proto__SetMicEQModeRequest__MicEQMode mic_eq_mode;
};
#define LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_mic_eqmode_request__descriptor) \
, LOGI__DEVICE__PROTO__SET_MIC_EQMODE_REQUEST__MIC_EQMODE__BASSBOOST }


struct  Logi__Device__Proto__SetMicEQModeResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if the setting request was successfully sent, false otherwise
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__SET_MIC_EQMODE_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_mic_eqmode_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the speaker eq mode audio setting be changed.
 * The device should send a device info event after this setting request are handled.
 * EXPECTED RESPONSE
 * SetSpeakerEQModeResponse
 */
struct  Logi__Device__Proto__SetSpeakerEQModeRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The speaker eq setting to be set
   *  see SpeakerEQ mode enumeration
   */
  Logi__Device__Proto__SetSpeakerEQModeRequest__SpeakerEQMode speaker_eq_mode;
};
#define LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_speaker_eqmode_request__descriptor) \
, LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_REQUEST__SPEAKER_EQMODE__BASSBOOST }


struct  Logi__Device__Proto__SetSpeakerEQModeResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if the setting request was successfully sent, false otherwise
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__SET_SPEAKER_EQMODE_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__set_speaker_eqmode_response__descriptor) \
, 0 }


/*
 **
 * This message requests that the device forgets a peripheral.
 * After forgetting the peripheral, the device should send ForgetDeviceResponse
 * and indicate success or false.
 * The device should also send a device info event after sending the response
 * to indicate the new peripheral state.
 * Note: micpod uid comes from device in this format "uid": "33",
 *   but Sync stores this as hex string , like  uuid: "0x0021".
 *   Sync app will send the uuid in hex string format.
 * EXPECTED RESPONSE
 * ForgetDeviceResponse
 */
struct  Logi__Device__Proto__ForgetDeviceRequest
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) The uuid of peripheral to forget
   */
  char *uuid;
};
#define LOGI__DEVICE__PROTO__FORGET_DEVICE_REQUEST__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__forget_device_request__descriptor) \
, (char *)protobuf_c_empty_string }


struct  Logi__Device__Proto__ForgetDeviceResponse
{
  ProtobufCMessage base;
  /*
   **
   * (REQUIRED) set to true if forget request was successfully handled
   */
  protobuf_c_boolean success;
};
#define LOGI__DEVICE__PROTO__FORGET_DEVICE_RESPONSE__INIT \
 { PROTOBUF_C_MESSAGE_INIT (&logi__device__proto__forget_device_response__descriptor) \
, 0 }


/* Logi__Device__Proto__RebootSchedule methods */
void   logi__device__proto__reboot_schedule__init
                     (Logi__Device__Proto__RebootSchedule         *message);
size_t logi__device__proto__reboot_schedule__get_packed_size
                     (const Logi__Device__Proto__RebootSchedule   *message);
size_t logi__device__proto__reboot_schedule__pack
                     (const Logi__Device__Proto__RebootSchedule   *message,
                      uint8_t             *out);
size_t logi__device__proto__reboot_schedule__pack_to_buffer
                     (const Logi__Device__Proto__RebootSchedule   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__RebootSchedule *
       logi__device__proto__reboot_schedule__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__reboot_schedule__free_unpacked
                     (Logi__Device__Proto__RebootSchedule *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__RebootDeviceRequest methods */
void   logi__device__proto__reboot_device_request__init
                     (Logi__Device__Proto__RebootDeviceRequest         *message);
size_t logi__device__proto__reboot_device_request__get_packed_size
                     (const Logi__Device__Proto__RebootDeviceRequest   *message);
size_t logi__device__proto__reboot_device_request__pack
                     (const Logi__Device__Proto__RebootDeviceRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__reboot_device_request__pack_to_buffer
                     (const Logi__Device__Proto__RebootDeviceRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__RebootDeviceRequest *
       logi__device__proto__reboot_device_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__reboot_device_request__free_unpacked
                     (Logi__Device__Proto__RebootDeviceRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__RebootDeviceResponse methods */
void   logi__device__proto__reboot_device_response__init
                     (Logi__Device__Proto__RebootDeviceResponse         *message);
size_t logi__device__proto__reboot_device_response__get_packed_size
                     (const Logi__Device__Proto__RebootDeviceResponse   *message);
size_t logi__device__proto__reboot_device_response__pack
                     (const Logi__Device__Proto__RebootDeviceResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__reboot_device_response__pack_to_buffer
                     (const Logi__Device__Proto__RebootDeviceResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__RebootDeviceResponse *
       logi__device__proto__reboot_device_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__reboot_device_response__free_unpacked
                     (Logi__Device__Proto__RebootDeviceResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetSpeakerBoostRequest methods */
void   logi__device__proto__set_speaker_boost_request__init
                     (Logi__Device__Proto__SetSpeakerBoostRequest         *message);
size_t logi__device__proto__set_speaker_boost_request__get_packed_size
                     (const Logi__Device__Proto__SetSpeakerBoostRequest   *message);
size_t logi__device__proto__set_speaker_boost_request__pack
                     (const Logi__Device__Proto__SetSpeakerBoostRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_speaker_boost_request__pack_to_buffer
                     (const Logi__Device__Proto__SetSpeakerBoostRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetSpeakerBoostRequest *
       logi__device__proto__set_speaker_boost_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_speaker_boost_request__free_unpacked
                     (Logi__Device__Proto__SetSpeakerBoostRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetSpeakerBoostResponse methods */
void   logi__device__proto__set_speaker_boost_response__init
                     (Logi__Device__Proto__SetSpeakerBoostResponse         *message);
size_t logi__device__proto__set_speaker_boost_response__get_packed_size
                     (const Logi__Device__Proto__SetSpeakerBoostResponse   *message);
size_t logi__device__proto__set_speaker_boost_response__pack
                     (const Logi__Device__Proto__SetSpeakerBoostResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_speaker_boost_response__pack_to_buffer
                     (const Logi__Device__Proto__SetSpeakerBoostResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetSpeakerBoostResponse *
       logi__device__proto__set_speaker_boost_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_speaker_boost_response__free_unpacked
                     (Logi__Device__Proto__SetSpeakerBoostResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetNoiseReductionRequest methods */
void   logi__device__proto__set_noise_reduction_request__init
                     (Logi__Device__Proto__SetNoiseReductionRequest         *message);
size_t logi__device__proto__set_noise_reduction_request__get_packed_size
                     (const Logi__Device__Proto__SetNoiseReductionRequest   *message);
size_t logi__device__proto__set_noise_reduction_request__pack
                     (const Logi__Device__Proto__SetNoiseReductionRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_noise_reduction_request__pack_to_buffer
                     (const Logi__Device__Proto__SetNoiseReductionRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetNoiseReductionRequest *
       logi__device__proto__set_noise_reduction_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_noise_reduction_request__free_unpacked
                     (Logi__Device__Proto__SetNoiseReductionRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetNoiseReductionResponse methods */
void   logi__device__proto__set_noise_reduction_response__init
                     (Logi__Device__Proto__SetNoiseReductionResponse         *message);
size_t logi__device__proto__set_noise_reduction_response__get_packed_size
                     (const Logi__Device__Proto__SetNoiseReductionResponse   *message);
size_t logi__device__proto__set_noise_reduction_response__pack
                     (const Logi__Device__Proto__SetNoiseReductionResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_noise_reduction_response__pack_to_buffer
                     (const Logi__Device__Proto__SetNoiseReductionResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetNoiseReductionResponse *
       logi__device__proto__set_noise_reduction_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_noise_reduction_response__free_unpacked
                     (Logi__Device__Proto__SetNoiseReductionResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetReverbModeRequest methods */
void   logi__device__proto__set_reverb_mode_request__init
                     (Logi__Device__Proto__SetReverbModeRequest         *message);
size_t logi__device__proto__set_reverb_mode_request__get_packed_size
                     (const Logi__Device__Proto__SetReverbModeRequest   *message);
size_t logi__device__proto__set_reverb_mode_request__pack
                     (const Logi__Device__Proto__SetReverbModeRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_reverb_mode_request__pack_to_buffer
                     (const Logi__Device__Proto__SetReverbModeRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetReverbModeRequest *
       logi__device__proto__set_reverb_mode_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_reverb_mode_request__free_unpacked
                     (Logi__Device__Proto__SetReverbModeRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetReverbModeResponse methods */
void   logi__device__proto__set_reverb_mode_response__init
                     (Logi__Device__Proto__SetReverbModeResponse         *message);
size_t logi__device__proto__set_reverb_mode_response__get_packed_size
                     (const Logi__Device__Proto__SetReverbModeResponse   *message);
size_t logi__device__proto__set_reverb_mode_response__pack
                     (const Logi__Device__Proto__SetReverbModeResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_reverb_mode_response__pack_to_buffer
                     (const Logi__Device__Proto__SetReverbModeResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetReverbModeResponse *
       logi__device__proto__set_reverb_mode_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_reverb_mode_response__free_unpacked
                     (Logi__Device__Proto__SetReverbModeResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetMicEQModeRequest methods */
void   logi__device__proto__set_mic_eqmode_request__init
                     (Logi__Device__Proto__SetMicEQModeRequest         *message);
size_t logi__device__proto__set_mic_eqmode_request__get_packed_size
                     (const Logi__Device__Proto__SetMicEQModeRequest   *message);
size_t logi__device__proto__set_mic_eqmode_request__pack
                     (const Logi__Device__Proto__SetMicEQModeRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_mic_eqmode_request__pack_to_buffer
                     (const Logi__Device__Proto__SetMicEQModeRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetMicEQModeRequest *
       logi__device__proto__set_mic_eqmode_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_mic_eqmode_request__free_unpacked
                     (Logi__Device__Proto__SetMicEQModeRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetMicEQModeResponse methods */
void   logi__device__proto__set_mic_eqmode_response__init
                     (Logi__Device__Proto__SetMicEQModeResponse         *message);
size_t logi__device__proto__set_mic_eqmode_response__get_packed_size
                     (const Logi__Device__Proto__SetMicEQModeResponse   *message);
size_t logi__device__proto__set_mic_eqmode_response__pack
                     (const Logi__Device__Proto__SetMicEQModeResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_mic_eqmode_response__pack_to_buffer
                     (const Logi__Device__Proto__SetMicEQModeResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetMicEQModeResponse *
       logi__device__proto__set_mic_eqmode_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_mic_eqmode_response__free_unpacked
                     (Logi__Device__Proto__SetMicEQModeResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetSpeakerEQModeRequest methods */
void   logi__device__proto__set_speaker_eqmode_request__init
                     (Logi__Device__Proto__SetSpeakerEQModeRequest         *message);
size_t logi__device__proto__set_speaker_eqmode_request__get_packed_size
                     (const Logi__Device__Proto__SetSpeakerEQModeRequest   *message);
size_t logi__device__proto__set_speaker_eqmode_request__pack
                     (const Logi__Device__Proto__SetSpeakerEQModeRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_speaker_eqmode_request__pack_to_buffer
                     (const Logi__Device__Proto__SetSpeakerEQModeRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetSpeakerEQModeRequest *
       logi__device__proto__set_speaker_eqmode_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_speaker_eqmode_request__free_unpacked
                     (Logi__Device__Proto__SetSpeakerEQModeRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__SetSpeakerEQModeResponse methods */
void   logi__device__proto__set_speaker_eqmode_response__init
                     (Logi__Device__Proto__SetSpeakerEQModeResponse         *message);
size_t logi__device__proto__set_speaker_eqmode_response__get_packed_size
                     (const Logi__Device__Proto__SetSpeakerEQModeResponse   *message);
size_t logi__device__proto__set_speaker_eqmode_response__pack
                     (const Logi__Device__Proto__SetSpeakerEQModeResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__set_speaker_eqmode_response__pack_to_buffer
                     (const Logi__Device__Proto__SetSpeakerEQModeResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__SetSpeakerEQModeResponse *
       logi__device__proto__set_speaker_eqmode_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__set_speaker_eqmode_response__free_unpacked
                     (Logi__Device__Proto__SetSpeakerEQModeResponse *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__ForgetDeviceRequest methods */
void   logi__device__proto__forget_device_request__init
                     (Logi__Device__Proto__ForgetDeviceRequest         *message);
size_t logi__device__proto__forget_device_request__get_packed_size
                     (const Logi__Device__Proto__ForgetDeviceRequest   *message);
size_t logi__device__proto__forget_device_request__pack
                     (const Logi__Device__Proto__ForgetDeviceRequest   *message,
                      uint8_t             *out);
size_t logi__device__proto__forget_device_request__pack_to_buffer
                     (const Logi__Device__Proto__ForgetDeviceRequest   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__ForgetDeviceRequest *
       logi__device__proto__forget_device_request__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__forget_device_request__free_unpacked
                     (Logi__Device__Proto__ForgetDeviceRequest *message,
                      ProtobufCAllocator *allocator);
/* Logi__Device__Proto__ForgetDeviceResponse methods */
void   logi__device__proto__forget_device_response__init
                     (Logi__Device__Proto__ForgetDeviceResponse         *message);
size_t logi__device__proto__forget_device_response__get_packed_size
                     (const Logi__Device__Proto__ForgetDeviceResponse   *message);
size_t logi__device__proto__forget_device_response__pack
                     (const Logi__Device__Proto__ForgetDeviceResponse   *message,
                      uint8_t             *out);
size_t logi__device__proto__forget_device_response__pack_to_buffer
                     (const Logi__Device__Proto__ForgetDeviceResponse   *message,
                      ProtobufCBuffer     *buffer);
Logi__Device__Proto__ForgetDeviceResponse *
       logi__device__proto__forget_device_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data);
void   logi__device__proto__forget_device_response__free_unpacked
                     (Logi__Device__Proto__ForgetDeviceResponse *message,
                      ProtobufCAllocator *allocator);
/* --- per-message closures --- */

typedef void (*Logi__Device__Proto__RebootSchedule_Closure)
                 (const Logi__Device__Proto__RebootSchedule *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__RebootDeviceRequest_Closure)
                 (const Logi__Device__Proto__RebootDeviceRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__RebootDeviceResponse_Closure)
                 (const Logi__Device__Proto__RebootDeviceResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetSpeakerBoostRequest_Closure)
                 (const Logi__Device__Proto__SetSpeakerBoostRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetSpeakerBoostResponse_Closure)
                 (const Logi__Device__Proto__SetSpeakerBoostResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetNoiseReductionRequest_Closure)
                 (const Logi__Device__Proto__SetNoiseReductionRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetNoiseReductionResponse_Closure)
                 (const Logi__Device__Proto__SetNoiseReductionResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetReverbModeRequest_Closure)
                 (const Logi__Device__Proto__SetReverbModeRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetReverbModeResponse_Closure)
                 (const Logi__Device__Proto__SetReverbModeResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetMicEQModeRequest_Closure)
                 (const Logi__Device__Proto__SetMicEQModeRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetMicEQModeResponse_Closure)
                 (const Logi__Device__Proto__SetMicEQModeResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetSpeakerEQModeRequest_Closure)
                 (const Logi__Device__Proto__SetSpeakerEQModeRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__SetSpeakerEQModeResponse_Closure)
                 (const Logi__Device__Proto__SetSpeakerEQModeResponse *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__ForgetDeviceRequest_Closure)
                 (const Logi__Device__Proto__ForgetDeviceRequest *message,
                  void *closure_data);
typedef void (*Logi__Device__Proto__ForgetDeviceResponse_Closure)
                 (const Logi__Device__Proto__ForgetDeviceResponse *message,
                  void *closure_data);

/* --- services --- */


/* --- descriptors --- */

extern const ProtobufCMessageDescriptor logi__device__proto__reboot_schedule__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__reboot_device_request__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__reboot_device_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_speaker_boost_request__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_speaker_boost_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_noise_reduction_request__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_noise_reduction_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_reverb_mode_request__descriptor;
extern const ProtobufCEnumDescriptor    logi__device__proto__set_reverb_mode_request__reverb_mode__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_reverb_mode_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_mic_eqmode_request__descriptor;
extern const ProtobufCEnumDescriptor    logi__device__proto__set_mic_eqmode_request__mic_eqmode__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_mic_eqmode_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_speaker_eqmode_request__descriptor;
extern const ProtobufCEnumDescriptor    logi__device__proto__set_speaker_eqmode_request__speaker_eqmode__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__set_speaker_eqmode_response__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__forget_device_request__descriptor;
extern const ProtobufCMessageDescriptor logi__device__proto__forget_device_response__descriptor;

PROTOBUF_C__END_DECLS


#endif  /* PROTOBUF_C_device_5frequest_2eproto__INCLUDED */
