14 #include <vlutil/vlFilename.h>
15 #include <matrix/vlVector.h>
23 class DtGeodeticCoord;
46 typedef std::map<std::string, TimezoneData>
Timezones;
52 : lowVal(l), highVal(h), iconFile(i)
57 : lowVal(orig.lowVal), highVal(orig.highVal), iconFile(orig.iconFile)
91 virtual const Timezones& timezones()
const;
95 virtual void setUseLocalTimezone(
bool);
96 virtual bool useLocalTimezone()
const;
102 virtual void setDateAndTimeOfDayFormat(
const std::string&);
103 virtual std::string dateAndTimeOfDayFormat()
const;
113 virtual time_t offsetForTimezone(
const std::string& key)
const;
117 virtual time_t modifyTimeBasedOnTimezoneSelection(time_t);
120 virtual void setCurrentTimezone(
const std::string&);
123 virtual std::string currentTimezone()
const;
126 virtual void setCurrentFormatsSet(
const std::string&);
129 virtual std::string currentFormatsSet()
const;
132 virtual std::string currentTimezoneAbbreviation()
const;
135 virtual std::string timezoneTitle()
const;
138 virtual time_t offsetForTimezone()
const;
141 virtual time_t convertFromLocalTimeToUtcTime(time_t)
const;
144 virtual time_t currentUtcDateTime()
const;
147 virtual time_t currentLocalDateTime()
const;
150 virtual time_t convertFromUtcTimeToLocalTime(time_t)
const;
151 virtual void convertFromUtcTimeToLocalTime(
int y,
int m,
int d,
int h,
int mm,
int sec,
152 int& year,
int& month,
int& day,
int& hours,
int& minutes,
int& seconds)
const;
153 virtual time_t convertToUtcTime(
int y,
int m,
int d,
int h,
int mm,
int sec)
const;
156 virtual time_t convert(
const std::string&
source, time_t,
const std::string&
dest);
159 virtual void load(
const DtFilename&,
bool merge =
false);
162 virtual std::string dateTimeFormatString(time_t);
175 virtual double illuminationValue(
const DtGeodeticCoord& position, time_t time,
176 double nighttimeMaximum = 0.1,
double illuminationMinimum = 0.001,
bool useGMTPosition =
false,
int* sunstate = 0)
const;
179 virtual double maximumNighttimeValue()
const;
180 virtual void setMaximumNighttimeValue(
double);
183 virtual double minimumIlluminationValue();
184 virtual void setMinimumIlluminationValue(
double);
187 virtual std::string illuminationIcon(
double illumination,
int sunState)
const;
190 virtual void addIlluminationIcon(
int sunState,
double lowIllumination,
double highIllumination,
const std::string&);
194 return myIlluminationIcons;
199 return myIlluminationIcons;
203 virtual void resetSystemDateTime();
205 virtual time_t utcTime(
struct tm* tod)
const;
209 virtual time_t offsetTimeByObserverPosition(time_t curTime)
const;
212 virtual time_t unoffsetTimeByObserverPosition(time_t curTime)
const;
215 virtual time_t timeZoneOffsetForPosition(
const DtVector&)
const;
218 virtual time_t timeZoneOffsetForCurrentObserver()
const;
IlluminationIconData(const IlluminationIconData &orig)
Definition: timeZoneManager.h:56
const char DtTimeDateFormatsSetStandard[]
Definition: timeZoneManager.h:25
FormatsSetsMap myFormatsSetsMap
Definition: timeZoneManager.h:237
Virtual base class.
Definition: DtVirtualBaseClass.h:22
const IlluminationIcon & illuminationIcons() const
Definition: timeZoneManager.h:192
boost::signals2::signal< void(std::string)> signal_dateAndTimeFormatChanged
Definition: timeZoneManager.h:224
boost::signals2::signal< void(std::string)> signal_formatsSetChanged
Definition: timeZoneManager.h:226
IlluminationIcon myIlluminationIcons
Definition: timeZoneManager.h:234
std::string title
Definition: timeZoneManager.h:40
DateTimeFormats myDateTimeFormats
Definition: timeZoneManager.h:235
Definition: timeZoneManager.h:37
std::map< int, std::vector< IlluminationIconData > > IlluminationIcon
Definition: timeZoneManager.h:66
std::vector< std::string > DateTimeFormats
Definition: timeZoneManager.h:68
IlluminationIconData(double l, double h, const std::string &i)
Definition: timeZoneManager.h:51
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
std::map< std::string, TimezoneData > Timezones
Key is abbreviation.
Definition: timeZoneManager.h:46
IlluminationIconData()
Definition: timeZoneManager.h:49
std::string location
Hours.
Definition: timeZoneManager.h:42
double lowVal
Definition: timeZoneManager.h:61
Contains makVrv::DtVirtualBaseClass class.
std::string abbrev
Definition: timeZoneManager.h:39
boost::signals2::signal< void(std::string, std::string)> signal_timezoneChanged
Signal of old and new timezone.
Definition: timeZoneManager.h:222
Definition: timeZoneManager.h:47
std::map< std::string, FormatsSet > FormatsSetsMap
Definition: timeZoneManager.h:76
double myMinimumIlluminationValue
Definition: timeZoneManager.h:232
IlluminationIcon & illuminationIcons()
Definition: timeZoneManager.h:197
const char * source
Definition: lz4.h:436
double myNighttimeMaximumValue
Definition: timeZoneManager.h:231
const char DtTimeDateFormatsSetMilitary[]
Definition: timeZoneManager.h:26
std::string iconFile
Definition: timeZoneManager.h:63
Timezones myTimezones
Definition: timeZoneManager.h:229
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
makVrv::DtDe & myDe
Definition: timeZoneManager.h:230
char * dest
Definition: lz4.h:434
double offset
Definition: timeZoneManager.h:41
The timezone manager keeps track of all timezones available for the user to select from in the system...
Definition: timeZoneManager.h:33
double highVal
Definition: timeZoneManager.h:62