X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=include%2Fanna%2Fcore%2Futil%2FMicrosecond.hpp;h=7e7d45a04c863124e73f256e8ebe1cad5418bf1c;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hp=ceee06542ad19efdb762598bcabfd19a098a302b;hpb=4e12ac57e93c052f716a6305ad8fc099c45899d1;p=anna.git diff --git a/include/anna/core/util/Microsecond.hpp b/include/anna/core/util/Microsecond.hpp index ceee065..7e7d45a 100644 --- a/include/anna/core/util/Microsecond.hpp +++ b/include/anna/core/util/Microsecond.hpp @@ -1,37 +1,9 @@ -// ANNA - Anna is Not 'N' Anymore -// -// (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo -// -// https://bitbucket.org/testillano/anna -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// Authors: eduardo.ramos.testillano@gmail.com -// cisco.tierra@gmail.com +// ANNA - Anna is Not Nothingness Anymore // +// // +// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo // +// // +// See project site at http://redmine.teslayout.com/projects/anna-suite // +// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE // #ifndef anna_core_util_Microsecond_hpp @@ -39,7 +11,7 @@ #include -#include +#include #include namespace anna { @@ -49,7 +21,7 @@ class Second; class Microsecond { public: - typedef Integer64 type_t; + typedef S64 type_t; /** * Constructor @@ -84,82 +56,82 @@ public: * Conversor a numérico. * \return El valor asociado a esta instancia. */ - operator type_t () const throw() { return a_value; } + operator type_t () const { return a_value; } /** * \internal */ - type_t& refValue() throw() { return a_value; } + type_t& refValue() { return a_value; } - Microsecond& operator= (const Microsecond& other) throw() { a_value = other.a_value; return *this; } + Microsecond& operator= (const Microsecond& other) { a_value = other.a_value; return *this; } - Microsecond& operator= (const Millisecond& other) throw(); + Microsecond& operator= (const Millisecond& other) ; - Microsecond& operator= (const Second& other) throw(); + Microsecond& operator= (const Second& other) ; - bool operator== (const Microsecond& other) const throw() { return a_value == other.a_value; } + bool operator== (const Microsecond& other) const { return a_value == other.a_value; } - bool operator== (const Millisecond& other) const throw(); + bool operator== (const Millisecond& other) const ; - bool operator== (const Second& other) const throw(); + bool operator== (const Second& other) const ; - bool operator!= (const Microsecond& other) const throw() { return a_value != other.a_value; } + bool operator!= (const Microsecond& other) const { return a_value != other.a_value; } - bool operator!= (const Millisecond& other) const throw(); + bool operator!= (const Millisecond& other) const ; - bool operator!= (const Second& other) const throw(); + bool operator!= (const Second& other) const ; - bool operator> (const Microsecond& other) const throw() { return a_value > other.a_value; } + bool operator> (const Microsecond& other) const { return a_value > other.a_value; } - bool operator> (const Millisecond& other) const throw(); + bool operator> (const Millisecond& other) const ; - bool operator> (const Second& other) const throw(); + bool operator> (const Second& other) const ; - bool operator< (const Microsecond& other) const throw() { return a_value < other.a_value; } + bool operator< (const Microsecond& other) const { return a_value < other.a_value; } - bool operator< (const Millisecond& other) const throw(); + bool operator< (const Millisecond& other) const ; - bool operator< (const Second& other) const throw(); + bool operator< (const Second& other) const ; - bool operator>= (const Microsecond& other) const throw() { return a_value >= other.a_value; } + bool operator>= (const Microsecond& other) const { return a_value >= other.a_value; } - bool operator>= (const Millisecond& other) const throw() { return (operator==(other) == true) ? true : operator>(other); } + bool operator>= (const Millisecond& other) const { return (operator==(other) == true) ? true : operator>(other); } - bool operator>= (const Second& other) const throw() { return (operator==(other) == true) ? true : operator>(other); } + bool operator>= (const Second& other) const { return (operator==(other) == true) ? true : operator>(other); } - bool operator<= (const Microsecond& other) const throw() { return a_value <= other.a_value; } + bool operator<= (const Microsecond& other) const { return a_value <= other.a_value; } - bool operator<= (const Millisecond& other) const throw() { return (operator==(other) == true) ? true : operator<(other); } + bool operator<= (const Millisecond& other) const { return (operator==(other) == true) ? true : operator<(other); } - bool operator<= (const Second& other) const throw() { return (operator==(other) == true) ? true : operator<(other); } + bool operator<= (const Second& other) const { return (operator==(other) == true) ? true : operator<(other); } - Microsecond& operator+= (const Microsecond& other) throw() { a_value += other.a_value; return *this; } - Microsecond& operator*= (const int& value) throw() { a_value *= value; return *this; } + Microsecond& operator+= (const Microsecond& other) { a_value += other.a_value; return *this; } + Microsecond& operator*= (const int& value) { a_value *= value; return *this; } /** * Devuelve el valor asociado a esta instancia. * \return el valor asociado a esta instancia. */ - type_t getValue() const throw() { return a_value; } + type_t getValue() const { return a_value; } /** * Devuelve la hora actual de sistema expresada en microsegundos transcurridos desde el 1 de Enero de 1970 * \return la hora actual de sistema expresada en microsegundos transcurridos desde el 1 de Enero de 1970 */ - static Microsecond getTime() throw(); + static Microsecond getTime() ; /** * Devuelve una cadena con el valor de esta instancia y las unidades "us". * \return una cadena con el valor de esta instancia y las unidades "us". */ - std::string asString() const throw(); + std::string asString() const ; /** * Obtiene los microsegundos del valor contenido en la cadena recibida como parámetro. * \param value Cadena que contiene los microsegundos habrá sido obtenida con #asString. * \return los microsegundos del valor contenido en la cadena recibida como parámetro. */ - static Microsecond fromString(const std::string& value) throw(RuntimeException); + static Microsecond fromString(const std::string& value) noexcept(false); private: type_t a_value; @@ -167,35 +139,35 @@ private: friend class Millisecond; friend class Second; - friend class Microsecond operator - (const Microsecond& left, const Microsecond& right) throw(); - friend class Microsecond operator + (const Microsecond& left, const Microsecond& right) throw(); - friend class Microsecond operator / (const Microsecond& left, const Microsecond& right) throw(); - friend class Microsecond operator / (const Microsecond& left, const int right) throw(); - friend class Microsecond operator / (const Microsecond& left, const unsigned int right) throw(); + friend class Microsecond operator - (const Microsecond& left, const Microsecond& right) ; + friend class Microsecond operator + (const Microsecond& left, const Microsecond& right) ; + friend class Microsecond operator / (const Microsecond& left, const Microsecond& right) ; + friend class Microsecond operator / (const Microsecond& left, const int right) ; + friend class Microsecond operator / (const Microsecond& left, const unsigned int right) ; }; inline Microsecond operator - (const Microsecond& left, const Microsecond& right) -throw() { +{ return Microsecond(left.a_value - right.a_value); } inline Microsecond operator + (const Microsecond& left, const Microsecond& right) -throw() { +{ return Microsecond(left.a_value + right.a_value); } inline Microsecond operator / (const Microsecond& left, const Microsecond& right) -throw() { +{ return Microsecond(left.a_value / right.a_value); } inline Microsecond operator / (const Microsecond& left, const int right) -throw() { +{ return Microsecond(left.a_value / right); } inline Microsecond operator / (const Microsecond& left, const unsigned int right) -throw() { +{ return Microsecond(left.a_value / right); }