BuiltinVariant.cpp
Go to the documentation of this file.
00001 /******************************************************************************
00002  * Copyright (C) 2014 by Ralf Kaestner                                        *
00003  * ralf.kaestner@gmail.com                                                    *
00004  *                                                                            *
00005  * This program is free software; you can redistribute it and/or modify       *
00006  * it under the terms of the Lesser GNU General Public License as published by*
00007  * the Free Software Foundation; either version 3 of the License, or          *
00008  * (at your option) any later version.                                        *
00009  *                                                                            *
00010  * This program is distributed in the hope that it will be useful,            *
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of             *
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the               *
00013  * Lesser GNU General Public License for more details.                        *
00014  *                                                                            *
00015  * You should have received a copy of the Lesser GNU General Public License   *
00016  * along with this program. If not, see <http://www.gnu.org/licenses/>.       *
00017  ******************************************************************************/
00018 
00019 #include <limits.h>
00020 
00021 #include "variant_topic_tools/BuiltinVariant.h"
00022 
00023 namespace variant_topic_tools {
00024 
00025 /*****************************************************************************/
00026 /* Constructors and Destructor                                               */
00027 /*****************************************************************************/
00028 
00029 BuiltinVariant::BuiltinVariant() {
00030 }
00031 
00032 BuiltinVariant::BuiltinVariant(const BuiltinVariant& src) :
00033   Variant(src) {
00034 }
00035 
00036 BuiltinVariant::BuiltinVariant(const Variant& src) :
00037   Variant(src) {
00038   if (value)
00039     BOOST_ASSERT(boost::dynamic_pointer_cast<Value>(value));
00040 }
00041 
00042 BuiltinVariant::~BuiltinVariant() {
00043 }
00044 
00045 BuiltinVariant::Value::Value() {
00046 }
00047 
00048 BuiltinVariant::Value::~Value() {
00049 }
00050 
00051 /*****************************************************************************/
00052 /* Accessors                                                                 */
00053 /*****************************************************************************/
00054 
00055 double BuiltinVariant::getNumericValue() const {
00056   if (value)
00057     return boost::dynamic_pointer_cast<Value>(value)->getNumericValue();
00058   else
00059     return std::numeric_limits<double>::quiet_NaN();
00060 }
00061 
00062 }


variant_topic_tools
Author(s): Ralf Kaestner
autogenerated on Tue Jul 9 2019 03:18:42