| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "ppapi/shared_impl/socket_option_data.h" |
| |
| namespace ppapi { |
| |
| SocketOptionData::SocketOptionData() : type_(TYPE_INVALID), value_(0) {} |
| |
| SocketOptionData::~SocketOptionData() {} |
| |
| SocketOptionData::Type SocketOptionData::GetType() const { return type_; } |
| |
| bool SocketOptionData::GetBool(bool* out_value) const { |
| if (!out_value || type_ != TYPE_BOOL) |
| return false; |
| *out_value = value_ != 0; |
| return true; |
| } |
| |
| bool SocketOptionData::GetInt32(int32_t* out_value) const { |
| if (!out_value || type_ != TYPE_INT32) |
| return false; |
| *out_value = value_; |
| return true; |
| } |
| |
| void SocketOptionData::SetBool(bool value) { |
| type_ = TYPE_BOOL; |
| value_ = value ? 1 : 0; |
| } |
| |
| void SocketOptionData::SetInt32(int32_t value) { |
| type_ = TYPE_INT32; |
| value_ = value; |
| } |
| |
| } // namespace ppapi |