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 SocketOptionData::~SocketOptionData() {}
     12 
     13 SocketOptionData::Type SocketOptionData::GetType() const { return type_; }
     14 
     15 bool 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 
     22 bool 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 
     29 void SocketOptionData::SetBool(bool value) {
     30   type_ = TYPE_BOOL;
     31   value_ = value ? 1 : 0;
     32 }
     33 
     34 void SocketOptionData::SetInt32(int32_t value) {
     35   type_ = TYPE_INT32;
     36   value_ = value;
     37 }
     38 
     39 }  // namespace ppapi
     40