Home | History | Annotate | Download | only in shared_impl
      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 
      9 SocketOptionData::SocketOptionData() : type_(TYPE_INVALID), value_(0) {
     10 }
     11 
     12 SocketOptionData::~SocketOptionData() {
     13 }
     14 
     15 SocketOptionData::Type SocketOptionData::GetType() const {
     16   return type_;
     17 }
     18 
     19 bool SocketOptionData::GetBool(bool* out_value) const {
     20   if (!out_value || type_ != TYPE_BOOL)
     21     return false;
     22   *out_value = value_ != 0;
     23   return true;
     24 }
     25 
     26 bool SocketOptionData::GetInt32(int32_t* out_value) const {
     27   if (!out_value || type_ != TYPE_INT32)
     28     return false;
     29   *out_value = value_;
     30   return true;
     31 }
     32 
     33 void SocketOptionData::SetBool(bool value) {
     34   type_ = TYPE_BOOL;
     35   value_ = value ? 1 : 0;
     36 }
     37 
     38 void SocketOptionData::SetInt32(int32_t value) {
     39   type_ = TYPE_INT32;
     40   value_ = value;
     41 }
     42 
     43 }  // namespace ppapi
     44