// Generated by the protocol buffer compiler.  DO NOT EDIT!

#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
#include "debugger_message.pb.h"
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
// @@protoc_insertion_point(includes)

namespace com {
namespace android {
namespace glesv2debugger {

void protobuf_ShutdownFile_debugger_5fmessage_2eproto() {
  delete Message::default_instance_;
}

void protobuf_AddDesc_debugger_5fmessage_2eproto() {
  static bool already_here = false;
  if (already_here) return;
  already_here = true;
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  Message::default_instance_ = new Message();
  Message::default_instance_->InitAsDefaultInstance();
  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_debugger_5fmessage_2eproto);
}

// Force AddDescriptors() to be called at static initialization time.
struct StaticDescriptorInitializer_debugger_5fmessage_2eproto {
  StaticDescriptorInitializer_debugger_5fmessage_2eproto() {
    protobuf_AddDesc_debugger_5fmessage_2eproto();
  }
} static_descriptor_initializer_debugger_5fmessage_2eproto_;


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

bool Message_Function_IsValid(int value) {
  switch(value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
    case 7:
    case 8:
    case 9:
    case 10:
    case 11:
    case 12:
    case 13:
    case 14:
    case 15:
    case 16:
    case 17:
    case 18:
    case 19:
    case 20:
    case 21:
    case 22:
    case 23:
    case 24:
    case 25:
    case 26:
    case 27:
    case 28:
    case 29:
    case 30:
    case 31:
    case 32:
    case 33:
    case 34:
    case 35:
    case 36:
    case 37:
    case 38:
    case 39:
    case 40:
    case 41:
    case 42:
    case 43:
    case 44:
    case 45:
    case 46:
    case 47:
    case 48:
    case 49:
    case 50:
    case 51:
    case 52:
    case 53:
    case 54:
    case 55:
    case 56:
    case 57:
    case 58:
    case 59:
    case 60:
    case 61:
    case 62:
    case 63:
    case 64:
    case 65:
    case 66:
    case 67:
    case 68:
    case 69:
    case 70:
    case 71:
    case 72:
    case 73:
    case 74:
    case 75:
    case 76:
    case 77:
    case 78:
    case 79:
    case 80:
    case 81:
    case 82:
    case 83:
    case 84:
    case 85:
    case 86:
    case 87:
    case 88:
    case 89:
    case 90:
    case 91:
    case 92:
    case 93:
    case 94:
    case 95:
    case 96:
    case 97:
    case 98:
    case 99:
    case 100:
    case 101:
    case 102:
    case 103:
    case 104:
    case 105:
    case 106:
    case 107:
    case 108:
    case 109:
    case 110:
    case 111:
    case 112:
    case 113:
    case 114:
    case 115:
    case 116:
    case 117:
    case 118:
    case 119:
    case 120:
    case 121:
    case 122:
    case 123:
    case 124:
    case 125:
    case 126:
    case 127:
    case 128:
    case 129:
    case 130:
    case 131:
    case 132:
    case 133:
    case 134:
    case 135:
    case 136:
    case 137:
    case 138:
    case 139:
    case 140:
    case 141:
    case 142:
    case 143:
    case 144:
    case 145:
    case 146:
    case 147:
    case 148:
    case 149:
    case 150:
    case 151:
    case 152:
    case 153:
    case 154:
    case 155:
    case 156:
    case 157:
    case 158:
    case 159:
    case 160:
    case 161:
    case 162:
    case 163:
    case 164:
    case 165:
    case 166:
    case 167:
    case 168:
    case 169:
    case 170:
    case 171:
    case 172:
    case 173:
    case 174:
    case 175:
    case 176:
    case 177:
    case 178:
    case 179:
    case 180:
    case 181:
    case 182:
    case 183:
    case 184:
    case 185:
    case 186:
    case 187:
    case 188:
    case 189:
    case 190:
      return true;
    default:
      return false;
  }
}

#ifndef _MSC_VER
const Message_Function Message::glActiveTexture;
const Message_Function Message::glAttachShader;
const Message_Function Message::glBindAttribLocation;
const Message_Function Message::glBindBuffer;
const Message_Function Message::glBindFramebuffer;
const Message_Function Message::glBindRenderbuffer;
const Message_Function Message::glBindTexture;
const Message_Function Message::glBlendColor;
const Message_Function Message::glBlendEquation;
const Message_Function Message::glBlendEquationSeparate;
const Message_Function Message::glBlendFunc;
const Message_Function Message::glBlendFuncSeparate;
const Message_Function Message::glBufferData;
const Message_Function Message::glBufferSubData;
const Message_Function Message::glCheckFramebufferStatus;
const Message_Function Message::glClear;
const Message_Function Message::glClearColor;
const Message_Function Message::glClearDepthf;
const Message_Function Message::glClearStencil;
const Message_Function Message::glColorMask;
const Message_Function Message::glCompileShader;
const Message_Function Message::glCompressedTexImage2D;
const Message_Function Message::glCompressedTexSubImage2D;
const Message_Function Message::glCopyTexImage2D;
const Message_Function Message::glCopyTexSubImage2D;
const Message_Function Message::glCreateProgram;
const Message_Function Message::glCreateShader;
const Message_Function Message::glCullFace;
const Message_Function Message::glDeleteBuffers;
const Message_Function Message::glDeleteFramebuffers;
const Message_Function Message::glDeleteProgram;
const Message_Function Message::glDeleteRenderbuffers;
const Message_Function Message::glDeleteShader;
const Message_Function Message::glDeleteTextures;
const Message_Function Message::glDepthFunc;
const Message_Function Message::glDepthMask;
const Message_Function Message::glDepthRangef;
const Message_Function Message::glDetachShader;
const Message_Function Message::glDisable;
const Message_Function Message::glDisableVertexAttribArray;
const Message_Function Message::glDrawArrays;
const Message_Function Message::glDrawElements;
const Message_Function Message::glEnable;
const Message_Function Message::glEnableVertexAttribArray;
const Message_Function Message::glFinish;
const Message_Function Message::glFlush;
const Message_Function Message::glFramebufferRenderbuffer;
const Message_Function Message::glFramebufferTexture2D;
const Message_Function Message::glFrontFace;
const Message_Function Message::glGenBuffers;
const Message_Function Message::glGenerateMipmap;
const Message_Function Message::glGenFramebuffers;
const Message_Function Message::glGenRenderbuffers;
const Message_Function Message::glGenTextures;
const Message_Function Message::glGetActiveAttrib;
const Message_Function Message::glGetActiveUniform;
const Message_Function Message::glGetAttachedShaders;
const Message_Function Message::glGetAttribLocation;
const Message_Function Message::glGetBooleanv;
const Message_Function Message::glGetBufferParameteriv;
const Message_Function Message::glGetError;
const Message_Function Message::glGetFloatv;
const Message_Function Message::glGetFramebufferAttachmentParameteriv;
const Message_Function Message::glGetIntegerv;
const Message_Function Message::glGetProgramiv;
const Message_Function Message::glGetProgramInfoLog;
const Message_Function Message::glGetRenderbufferParameteriv;
const Message_Function Message::glGetShaderiv;
const Message_Function Message::glGetShaderInfoLog;
const Message_Function Message::glGetShaderPrecisionFormat;
const Message_Function Message::glGetShaderSource;
const Message_Function Message::glGetString;
const Message_Function Message::glGetTexParameterfv;
const Message_Function Message::glGetTexParameteriv;
const Message_Function Message::glGetUniformfv;
const Message_Function Message::glGetUniformiv;
const Message_Function Message::glGetUniformLocation;
const Message_Function Message::glGetVertexAttribfv;
const Message_Function Message::glGetVertexAttribiv;
const Message_Function Message::glGetVertexAttribPointerv;
const Message_Function Message::glHint;
const Message_Function Message::glIsBuffer;
const Message_Function Message::glIsEnabled;
const Message_Function Message::glIsFramebuffer;
const Message_Function Message::glIsProgram;
const Message_Function Message::glIsRenderbuffer;
const Message_Function Message::glIsShader;
const Message_Function Message::glIsTexture;
const Message_Function Message::glLineWidth;
const Message_Function Message::glLinkProgram;
const Message_Function Message::glPixelStorei;
const Message_Function Message::glPolygonOffset;
const Message_Function Message::glReadPixels;
const Message_Function Message::glReleaseShaderCompiler;
const Message_Function Message::glRenderbufferStorage;
const Message_Function Message::glSampleCoverage;
const Message_Function Message::glScissor;
const Message_Function Message::glShaderBinary;
const Message_Function Message::glShaderSource;
const Message_Function Message::glStencilFunc;
const Message_Function Message::glStencilFuncSeparate;
const Message_Function Message::glStencilMask;
const Message_Function Message::glStencilMaskSeparate;
const Message_Function Message::glStencilOp;
const Message_Function Message::glStencilOpSeparate;
const Message_Function Message::glTexImage2D;
const Message_Function Message::glTexParameterf;
const Message_Function Message::glTexParameterfv;
const Message_Function Message::glTexParameteri;
const Message_Function Message::glTexParameteriv;
const Message_Function Message::glTexSubImage2D;
const Message_Function Message::glUniform1f;
const Message_Function Message::glUniform1fv;
const Message_Function Message::glUniform1i;
const Message_Function Message::glUniform1iv;
const Message_Function Message::glUniform2f;
const Message_Function Message::glUniform2fv;
const Message_Function Message::glUniform2i;
const Message_Function Message::glUniform2iv;
const Message_Function Message::glUniform3f;
const Message_Function Message::glUniform3fv;
const Message_Function Message::glUniform3i;
const Message_Function Message::glUniform3iv;
const Message_Function Message::glUniform4f;
const Message_Function Message::glUniform4fv;
const Message_Function Message::glUniform4i;
const Message_Function Message::glUniform4iv;
const Message_Function Message::glUniformMatrix2fv;
const Message_Function Message::glUniformMatrix3fv;
const Message_Function Message::glUniformMatrix4fv;
const Message_Function Message::glUseProgram;
const Message_Function Message::glValidateProgram;
const Message_Function Message::glVertexAttrib1f;
const Message_Function Message::glVertexAttrib1fv;
const Message_Function Message::glVertexAttrib2f;
const Message_Function Message::glVertexAttrib2fv;
const Message_Function Message::glVertexAttrib3f;
const Message_Function Message::glVertexAttrib3fv;
const Message_Function Message::glVertexAttrib4f;
const Message_Function Message::glVertexAttrib4fv;
const Message_Function Message::glVertexAttribPointer;
const Message_Function Message::glViewport;
const Message_Function Message::eglGetDisplay;
const Message_Function Message::eglInitialize;
const Message_Function Message::eglTerminate;
const Message_Function Message::eglGetConfigs;
const Message_Function Message::eglChooseConfig;
const Message_Function Message::eglGetConfigAttrib;
const Message_Function Message::eglCreateWindowSurface;
const Message_Function Message::eglCreatePixmapSurface;
const Message_Function Message::eglCreatePbufferSurface;
const Message_Function Message::eglDestroySurface;
const Message_Function Message::eglQuerySurface;
const Message_Function Message::eglCreateContext;
const Message_Function Message::eglDestroyContext;
const Message_Function Message::eglMakeCurrent;
const Message_Function Message::eglGetCurrentContext;
const Message_Function Message::eglGetCurrentSurface;
const Message_Function Message::eglGetCurrentDisplay;
const Message_Function Message::eglQueryContext;
const Message_Function Message::eglWaitGL;
const Message_Function Message::eglWaitNative;
const Message_Function Message::eglSwapBuffers;
const Message_Function Message::eglCopyBuffers;
const Message_Function Message::eglGetError;
const Message_Function Message::eglQueryString;
const Message_Function Message::eglGetProcAddress;
const Message_Function Message::eglSurfaceAttrib;
const Message_Function Message::eglBindTexImage;
const Message_Function Message::eglReleaseTexImage;
const Message_Function Message::eglSwapInterval;
const Message_Function Message::eglBindAPI;
const Message_Function Message::eglQueryAPI;
const Message_Function Message::eglWaitClient;
const Message_Function Message::eglReleaseThread;
const Message_Function Message::eglCreatePbufferFromClientBuffer;
const Message_Function Message::eglLockSurfaceKHR;
const Message_Function Message::eglUnlockSurfaceKHR;
const Message_Function Message::eglCreateImageKHR;
const Message_Function Message::eglDestroyImageKHR;
const Message_Function Message::eglCreateSyncKHR;
const Message_Function Message::eglDestroySyncKHR;
const Message_Function Message::eglClientWaitSyncKHR;
const Message_Function Message::eglGetSyncAttribKHR;
const Message_Function Message::eglSetSwapRectangleANDROID;
const Message_Function Message::eglGetRenderBufferANDROID;
const Message_Function Message::ACK;
const Message_Function Message::NEG;
const Message_Function Message::CONTINUE;
const Message_Function Message::SKIP;
const Message_Function Message::SETPROP;
const Message_Function Message::Function_MIN;
const Message_Function Message::Function_MAX;
const int Message::Function_ARRAYSIZE;
#endif  // _MSC_VER
bool Message_Type_IsValid(int value) {
  switch(value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
      return true;
    default:
      return false;
  }
}

#ifndef _MSC_VER
const Message_Type Message::BeforeCall;
const Message_Type Message::AfterCall;
const Message_Type Message::AfterGeneratedCall;
const Message_Type Message::Response;
const Message_Type Message::CompleteCall;
const Message_Type Message::Type_MIN;
const Message_Type Message::Type_MAX;
const int Message::Type_ARRAYSIZE;
#endif  // _MSC_VER
bool Message_DataType_IsValid(int value) {
  switch(value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}

#ifndef _MSC_VER
const Message_DataType Message::ReferencedImage;
const Message_DataType Message::NonreferencedImage;
const Message_DataType Message::DataType_MIN;
const Message_DataType Message::DataType_MAX;
const int Message::DataType_ARRAYSIZE;
#endif  // _MSC_VER
bool Message_Prop_IsValid(int value) {
  switch(value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
      return true;
    default:
      return false;
  }
}

#ifndef _MSC_VER
const Message_Prop Message::CaptureDraw;
const Message_Prop Message::TimeMode;
const Message_Prop Message::ExpectResponse;
const Message_Prop Message::CaptureSwap;
const Message_Prop Message::GLConstant;
const Message_Prop Message::Prop_MIN;
const Message_Prop Message::Prop_MAX;
const int Message::Prop_ARRAYSIZE;
#endif  // _MSC_VER
const ::std::string Message::_default_data_;
#ifndef _MSC_VER
const int Message::kContextIdFieldNumber;
const int Message::kFunctionFieldNumber;
const int Message::kTypeFieldNumber;
const int Message::kExpectResponseFieldNumber;
const int Message::kRetFieldNumber;
const int Message::kArg0FieldNumber;
const int Message::kArg1FieldNumber;
const int Message::kArg2FieldNumber;
const int Message::kArg3FieldNumber;
const int Message::kArg4FieldNumber;
const int Message::kArg5FieldNumber;
const int Message::kArg6FieldNumber;
const int Message::kArg7FieldNumber;
const int Message::kArg8FieldNumber;
const int Message::kDataFieldNumber;
const int Message::kDataTypeFieldNumber;
const int Message::kPixelFormatFieldNumber;
const int Message::kPixelTypeFieldNumber;
const int Message::kImageWidthFieldNumber;
const int Message::kImageHeightFieldNumber;
const int Message::kTimeFieldNumber;
const int Message::kPropFieldNumber;
const int Message::kClockFieldNumber;
#endif  // !_MSC_VER

Message::Message()
  : ::google::protobuf::MessageLite() {
  SharedCtor();
}

void Message::InitAsDefaultInstance() {
}

Message::Message(const Message& from)
  : ::google::protobuf::MessageLite() {
  SharedCtor();
  MergeFrom(from);
}

void Message::SharedCtor() {
  _cached_size_ = 0;
  context_id_ = 0;
  function_ = 187;
  type_ = 0;
  expect_response_ = false;
  ret_ = 0;
  arg0_ = 0;
  arg1_ = 0;
  arg2_ = 0;
  arg3_ = 0;
  arg4_ = 0;
  arg5_ = 0;
  arg6_ = 0;
  arg7_ = 0;
  arg8_ = 0;
  data_ = const_cast< ::std::string*>(&_default_data_);
  data_type_ = 0;
  pixel_format_ = 0;
  pixel_type_ = 0;
  image_width_ = 0;
  image_height_ = 0;
  time_ = 0;
  prop_ = 0;
  clock_ = 0;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

Message::~Message() {
  SharedDtor();
}

void Message::SharedDtor() {
  if (data_ != &_default_data_) {
    delete data_;
  }
  if (this != default_instance_) {
  }
}

void Message::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const Message& Message::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_debugger_5fmessage_2eproto();  return *default_instance_;
}

Message* Message::default_instance_ = NULL;

Message* Message::New() const {
  return new Message;
}

void Message::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    context_id_ = 0;
    function_ = 187;
    type_ = 0;
    expect_response_ = false;
    ret_ = 0;
    arg0_ = 0;
    arg1_ = 0;
    arg2_ = 0;
  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    arg3_ = 0;
    arg4_ = 0;
    arg5_ = 0;
    arg6_ = 0;
    arg7_ = 0;
    arg8_ = 0;
    if (_has_bit(14)) {
      if (data_ != &_default_data_) {
        data_->clear();
      }
    }
    data_type_ = 0;
  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    pixel_format_ = 0;
    pixel_type_ = 0;
    image_width_ = 0;
    image_height_ = 0;
    time_ = 0;
    prop_ = 0;
    clock_ = 0;
  }
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

bool Message::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // required int32 context_id = 1;
      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &context_id_)));
          _set_bit(0);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(16)) goto parse_function;
        break;
      }
      
      // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG];
      case 2: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_function:
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::com::android::glesv2debugger::Message_Function_IsValid(value)) {
            set_function(static_cast< ::com::android::glesv2debugger::Message_Function >(value));
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(24)) goto parse_type;
        break;
      }
      
      // required .com.android.glesv2debugger.Message.Type type = 3;
      case 3: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_type:
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::com::android::glesv2debugger::Message_Type_IsValid(value)) {
            set_type(static_cast< ::com::android::glesv2debugger::Message_Type >(value));
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(32)) goto parse_expect_response;
        break;
      }
      
      // required bool expect_response = 4;
      case 4: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_expect_response:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &expect_response_)));
          _set_bit(3);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(40)) goto parse_ret;
        break;
      }
      
      // optional int32 ret = 5;
      case 5: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_ret:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &ret_)));
          _set_bit(4);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(48)) goto parse_arg0;
        break;
      }
      
      // optional int32 arg0 = 6;
      case 6: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg0:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg0_)));
          _set_bit(5);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(56)) goto parse_arg1;
        break;
      }
      
      // optional int32 arg1 = 7;
      case 7: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg1:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg1_)));
          _set_bit(6);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(64)) goto parse_arg2;
        break;
      }
      
      // optional int32 arg2 = 8;
      case 8: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg2:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg2_)));
          _set_bit(7);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(72)) goto parse_arg3;
        break;
      }
      
      // optional int32 arg3 = 9;
      case 9: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg3:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg3_)));
          _set_bit(8);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(82)) goto parse_data;
        break;
      }
      
      // optional bytes data = 10;
      case 10: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_data:
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_data()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(93)) goto parse_time;
        break;
      }
      
      // optional float time = 11;
      case 11: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_time:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &time_)));
          _set_bit(20);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(128)) goto parse_arg4;
        break;
      }
      
      // optional int32 arg4 = 16;
      case 16: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg4:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg4_)));
          _set_bit(9);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(136)) goto parse_arg5;
        break;
      }
      
      // optional int32 arg5 = 17;
      case 17: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg5:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg5_)));
          _set_bit(10);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(144)) goto parse_arg6;
        break;
      }
      
      // optional int32 arg6 = 18;
      case 18: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg6:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg6_)));
          _set_bit(11);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(152)) goto parse_arg7;
        break;
      }
      
      // optional int32 arg7 = 19;
      case 19: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg7:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg7_)));
          _set_bit(12);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(160)) goto parse_arg8;
        break;
      }
      
      // optional int32 arg8 = 20;
      case 20: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_arg8:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &arg8_)));
          _set_bit(13);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(168)) goto parse_prop;
        break;
      }
      
      // optional .com.android.glesv2debugger.Message.Prop prop = 21;
      case 21: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_prop:
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::com::android::glesv2debugger::Message_Prop_IsValid(value)) {
            set_prop(static_cast< ::com::android::glesv2debugger::Message_Prop >(value));
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(181)) goto parse_clock;
        break;
      }
      
      // optional float clock = 22;
      case 22: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_clock:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &clock_)));
          _set_bit(22);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(184)) goto parse_data_type;
        break;
      }
      
      // optional .com.android.glesv2debugger.Message.DataType data_type = 23;
      case 23: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_data_type:
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          if (::com::android::glesv2debugger::Message_DataType_IsValid(value)) {
            set_data_type(static_cast< ::com::android::glesv2debugger::Message_DataType >(value));
          }
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(192)) goto parse_pixel_format;
        break;
      }
      
      // optional int32 pixel_format = 24;
      case 24: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_pixel_format:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &pixel_format_)));
          _set_bit(16);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(200)) goto parse_pixel_type;
        break;
      }
      
      // optional int32 pixel_type = 25;
      case 25: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_pixel_type:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &pixel_type_)));
          _set_bit(17);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(208)) goto parse_image_width;
        break;
      }
      
      // optional int32 image_width = 26;
      case 26: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_image_width:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &image_width_)));
          _set_bit(18);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(216)) goto parse_image_height;
        break;
      }
      
      // optional int32 image_height = 27;
      case 27: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_image_height:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &image_height_)));
          _set_bit(19);
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectAtEnd()) return true;
        break;
      }
      
      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void Message::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // required int32 context_id = 1;
  if (_has_bit(0)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->context_id(), output);
  }
  
  // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG];
  if (_has_bit(1)) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      2, this->function(), output);
  }
  
  // required .com.android.glesv2debugger.Message.Type type = 3;
  if (_has_bit(2)) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      3, this->type(), output);
  }
  
  // required bool expect_response = 4;
  if (_has_bit(3)) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->expect_response(), output);
  }
  
  // optional int32 ret = 5;
  if (_has_bit(4)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->ret(), output);
  }
  
  // optional int32 arg0 = 6;
  if (_has_bit(5)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->arg0(), output);
  }
  
  // optional int32 arg1 = 7;
  if (_has_bit(6)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->arg1(), output);
  }
  
  // optional int32 arg2 = 8;
  if (_has_bit(7)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->arg2(), output);
  }
  
  // optional int32 arg3 = 9;
  if (_has_bit(8)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->arg3(), output);
  }
  
  // optional bytes data = 10;
  if (_has_bit(14)) {
    ::google::protobuf::internal::WireFormatLite::WriteBytes(
      10, this->data(), output);
  }
  
  // optional float time = 11;
  if (_has_bit(20)) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(11, this->time(), output);
  }
  
  // optional int32 arg4 = 16;
  if (_has_bit(9)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(16, this->arg4(), output);
  }
  
  // optional int32 arg5 = 17;
  if (_has_bit(10)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->arg5(), output);
  }
  
  // optional int32 arg6 = 18;
  if (_has_bit(11)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(18, this->arg6(), output);
  }
  
  // optional int32 arg7 = 19;
  if (_has_bit(12)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(19, this->arg7(), output);
  }
  
  // optional int32 arg8 = 20;
  if (_has_bit(13)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(20, this->arg8(), output);
  }
  
  // optional .com.android.glesv2debugger.Message.Prop prop = 21;
  if (_has_bit(21)) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      21, this->prop(), output);
  }
  
  // optional float clock = 22;
  if (_has_bit(22)) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(22, this->clock(), output);
  }
  
  // optional .com.android.glesv2debugger.Message.DataType data_type = 23;
  if (_has_bit(15)) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      23, this->data_type(), output);
  }
  
  // optional int32 pixel_format = 24;
  if (_has_bit(16)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(24, this->pixel_format(), output);
  }
  
  // optional int32 pixel_type = 25;
  if (_has_bit(17)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(25, this->pixel_type(), output);
  }
  
  // optional int32 image_width = 26;
  if (_has_bit(18)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(26, this->image_width(), output);
  }
  
  // optional int32 image_height = 27;
  if (_has_bit(19)) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(27, this->image_height(), output);
  }
  
}

int Message::ByteSize() const {
  int total_size = 0;
  
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    // required int32 context_id = 1;
    if (has_context_id()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->context_id());
    }
    
    // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG];
    if (has_function()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->function());
    }
    
    // required .com.android.glesv2debugger.Message.Type type = 3;
    if (has_type()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
    }
    
    // required bool expect_response = 4;
    if (has_expect_response()) {
      total_size += 1 + 1;
    }
    
    // optional int32 ret = 5;
    if (has_ret()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->ret());
    }
    
    // optional int32 arg0 = 6;
    if (has_arg0()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg0());
    }
    
    // optional int32 arg1 = 7;
    if (has_arg1()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg1());
    }
    
    // optional int32 arg2 = 8;
    if (has_arg2()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg2());
    }
    
  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    // optional int32 arg3 = 9;
    if (has_arg3()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg3());
    }
    
    // optional int32 arg4 = 16;
    if (has_arg4()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg4());
    }
    
    // optional int32 arg5 = 17;
    if (has_arg5()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg5());
    }
    
    // optional int32 arg6 = 18;
    if (has_arg6()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg6());
    }
    
    // optional int32 arg7 = 19;
    if (has_arg7()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg7());
    }
    
    // optional int32 arg8 = 20;
    if (has_arg8()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->arg8());
    }
    
    // optional bytes data = 10;
    if (has_data()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->data());
    }
    
    // optional .com.android.glesv2debugger.Message.DataType data_type = 23;
    if (has_data_type()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->data_type());
    }
    
  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    // optional int32 pixel_format = 24;
    if (has_pixel_format()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->pixel_format());
    }
    
    // optional int32 pixel_type = 25;
    if (has_pixel_type()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->pixel_type());
    }
    
    // optional int32 image_width = 26;
    if (has_image_width()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->image_width());
    }
    
    // optional int32 image_height = 27;
    if (has_image_height()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->image_height());
    }
    
    // optional float time = 11;
    if (has_time()) {
      total_size += 1 + 4;
    }
    
    // optional .com.android.glesv2debugger.Message.Prop prop = 21;
    if (has_prop()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::EnumSize(this->prop());
    }
    
    // optional float clock = 22;
    if (has_clock()) {
      total_size += 2 + 4;
    }
    
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void Message::CheckTypeAndMergeFrom(
    const ::google::protobuf::MessageLite& from) {
  MergeFrom(*::google::protobuf::down_cast<const Message*>(&from));
}

void Message::MergeFrom(const Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from._has_bit(0)) {
      set_context_id(from.context_id());
    }
    if (from._has_bit(1)) {
      set_function(from.function());
    }
    if (from._has_bit(2)) {
      set_type(from.type());
    }
    if (from._has_bit(3)) {
      set_expect_response(from.expect_response());
    }
    if (from._has_bit(4)) {
      set_ret(from.ret());
    }
    if (from._has_bit(5)) {
      set_arg0(from.arg0());
    }
    if (from._has_bit(6)) {
      set_arg1(from.arg1());
    }
    if (from._has_bit(7)) {
      set_arg2(from.arg2());
    }
  }
  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    if (from._has_bit(8)) {
      set_arg3(from.arg3());
    }
    if (from._has_bit(9)) {
      set_arg4(from.arg4());
    }
    if (from._has_bit(10)) {
      set_arg5(from.arg5());
    }
    if (from._has_bit(11)) {
      set_arg6(from.arg6());
    }
    if (from._has_bit(12)) {
      set_arg7(from.arg7());
    }
    if (from._has_bit(13)) {
      set_arg8(from.arg8());
    }
    if (from._has_bit(14)) {
      set_data(from.data());
    }
    if (from._has_bit(15)) {
      set_data_type(from.data_type());
    }
  }
  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    if (from._has_bit(16)) {
      set_pixel_format(from.pixel_format());
    }
    if (from._has_bit(17)) {
      set_pixel_type(from.pixel_type());
    }
    if (from._has_bit(18)) {
      set_image_width(from.image_width());
    }
    if (from._has_bit(19)) {
      set_image_height(from.image_height());
    }
    if (from._has_bit(20)) {
      set_time(from.time());
    }
    if (from._has_bit(21)) {
      set_prop(from.prop());
    }
    if (from._has_bit(22)) {
      set_clock(from.clock());
    }
  }
}

void Message::CopyFrom(const Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool Message::IsInitialized() const {
  if ((_has_bits_[0] & 0x0000000f) != 0x0000000f) return false;
  
  return true;
}

void Message::Swap(Message* other) {
  if (other != this) {
    std::swap(context_id_, other->context_id_);
    std::swap(function_, other->function_);
    std::swap(type_, other->type_);
    std::swap(expect_response_, other->expect_response_);
    std::swap(ret_, other->ret_);
    std::swap(arg0_, other->arg0_);
    std::swap(arg1_, other->arg1_);
    std::swap(arg2_, other->arg2_);
    std::swap(arg3_, other->arg3_);
    std::swap(arg4_, other->arg4_);
    std::swap(arg5_, other->arg5_);
    std::swap(arg6_, other->arg6_);
    std::swap(arg7_, other->arg7_);
    std::swap(arg8_, other->arg8_);
    std::swap(data_, other->data_);
    std::swap(data_type_, other->data_type_);
    std::swap(pixel_format_, other->pixel_format_);
    std::swap(pixel_type_, other->pixel_type_);
    std::swap(image_width_, other->image_width_);
    std::swap(image_height_, other->image_height_);
    std::swap(time_, other->time_);
    std::swap(prop_, other->prop_);
    std::swap(clock_, other->clock_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::std::string Message::GetTypeName() const {
  return "com.android.glesv2debugger.Message";
}


// @@protoc_insertion_point(namespace_scope)

}  // namespace glesv2debugger
}  // namespace android
}  // namespace com

// @@protoc_insertion_point(global_scope)
