1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "ppapi/shared_impl/socket_option_data.h" 6 7 namespace ppapi { 8 SocketOptionData()9SocketOptionData::SocketOptionData() : type_(TYPE_INVALID), value_(0) {} 10 ~SocketOptionData()11SocketOptionData::~SocketOptionData() {} 12 GetType() const13SocketOptionData::Type SocketOptionData::GetType() const { return type_; } 14 GetBool(bool * out_value) const15bool SocketOptionData::GetBool(bool* out_value) const { 16 if (!out_value || type_ != TYPE_BOOL) 17 return false; 18 *out_value = value_ != 0; 19 return true; 20 } 21 GetInt32(int32_t * out_value) const22bool SocketOptionData::GetInt32(int32_t* out_value) const { 23 if (!out_value || type_ != TYPE_INT32) 24 return false; 25 *out_value = value_; 26 return true; 27 } 28 SetBool(bool value)29void SocketOptionData::SetBool(bool value) { 30 type_ = TYPE_BOOL; 31 value_ = value ? 1 : 0; 32 } 33 SetInt32(int32_t value)34void SocketOptionData::SetInt32(int32_t value) { 35 type_ = TYPE_INT32; 36 value_ = value; 37 } 38 39 } // namespace ppapi 40