Logo
~Apps~
~Projects~
~Contact~


BTInteger.h

Go to the documentation of this file.
00001 
00006 /*
00007 Copyright (C) 2005  Anders Hedstrom
00008 
00009 This program is free software; you can redistribute it and/or
00010 modify it under the terms of the GNU General Public License
00011 as published by the Free Software Foundation; either version 2
00012 of the License, or (at your option) any later version.
00013 
00014 This program is distributed in the hope that it will be useful,
00015 but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 GNU General Public License for more details.
00018 
00019 You should have received a copy of the GNU General Public License
00020 along with this program; if not, write to the Free Software
00021 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00022 */
00023 #ifndef _BTINTEGER_H
00024 #define _BTINTEGER_H
00025 
00026 #ifdef _WIN32
00027 #pragma warning(disable:4786)
00028 typedef __int64 int64_t;
00029 #else
00030 #include <stdint.h>
00031 #endif
00032 #include "BTObject.h"
00033 
00034 
00036 
00037 class BTInteger : public BTObject
00038 {
00039 public:
00040         BTInteger() : BTObject(0),m_val(0) {}
00041         ~BTInteger() {}
00042         char Type() { return 'i'; }
00043         void Show() {
00044                 BTObject::Show();
00045                 printf("%s ",GetValue().c_str());
00046         }
00047 
00048         std::string GetValue() {
00049                 return m_value;
00050         }
00051         void SetValue(const std::string &str) {
00052                 m_value = str;
00053                 m_val = 0;
00054                 for (size_t i = 0; i < str.size(); i++)
00055                 {
00056                         m_val = m_val * 10 + (str[i] - 48);
00057                 }
00058         }
00059         int64_t GetVal() { return m_val; }
00060 
00061 private:
00062         std::string m_value;
00063         int64_t m_val;
00064 };
00065 
00066 
00067 #endif // _BTINTEGER_H
Page, code, and content Copyright (C) 2006 by Anders Hedström
Generated on Mon Aug 29 20:21:47 2005 for C++ Sockets by  doxygen 1.4.4