X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=source%2Ftime%2Ffunctions.cpp;h=f27081dc4e02f92475051168411b8f38af1a0e1e;hb=0c646b4aa99a84ef6976a51b6d4554aea11ded35;hp=b044fd2dba5e61848623e0991668fd9ccc432792;hpb=3e258840b15577cb8bda3cdedd0b9b88e16404b3;p=anna.git diff --git a/source/time/functions.cpp b/source/time/functions.cpp index b044fd2..f27081d 100644 --- a/source/time/functions.cpp +++ b/source/time/functions.cpp @@ -2,7 +2,7 @@ // // (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo // -// https://bitbucket.org/testillano/anna +// http://redmine.teslayout.com/projects/anna-suite // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions @@ -14,7 +14,7 @@ // 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 +// * Neither the name of the copyright holder nor the names of its // contributors may be used to endorse or promote products derived from // this software without specific prior written permission. // @@ -36,7 +36,7 @@ // Local #include -#include +#include // Standard #include // getenv @@ -49,27 +49,16 @@ namespace anna { namespace time { -TZ shell_local_tz; +Timezone SystemTimezone; unsigned long long int SecondsReference; } } void anna::time::functions::initialize() throw() { -//throw(anna::RuntimeException) { -// If the system is configured properly, the default time zone will be correct. You might set TZ if you are -// using a computer over a network from a different time zone, and would like times reported to you in the -// time zone local to you, rather than what is local to the computer. static bool cached = false; - if(!cached) { - // The getenv() function need not be reentrant. A function that is not required to be reentrant is not - // required to be thread-safe. - const char *local_tz = getenv("TZ"); - shell_local_tz.set(local_tz); -// if (shell_local_tz.isUnset()) -// std::cout << "'TZ' enviroment variable is not defined on shell (it shouldn't be necesary)" << std::endl; -// setControlPoint(); + SystemTimezone.set(getenv("TZ")); SecondsReference = 0; cached = true; } @@ -83,12 +72,12 @@ unsigned long long int anna::time::functions::getSecondsReference() throw() { return SecondsReference; } -const anna::time::TZ & anna::time::functions::getLocalTz(void) throw() { - return (shell_local_tz); +const anna::time::Timezone & anna::time::functions::getSystemTimezone(void) throw() { + return (SystemTimezone); } bool anna::time::functions::initialized(void) throw() { - return (shell_local_tz.isInitialized()); + return (SystemTimezone.isInitialized()); } unsigned long long int anna::time::functions::unixSeconds(void) throw() {