Interface and Implementation Notes

Implementation Libraries

Summit Calendar functionality is shipped as a library providing a Singleton. The library is called libscal. It links against QuantLib, Boost file system, regular expression and date/time.

Development and Compile-time

At minimum all that is needed is a call to use the Singleton to use eepgwde::detail::Calendars::path() and eepgwde::detail::Calendars::fix().

For compilation, you need to use scal.hpp and this needs the Boost and QuantLib headers.

The interface is simple enough to call. It's a function call fix() and it uses a hard-coded map.

  path = eepgwde::Summit::Q::instance().path(fs::path(::getenv("ELEVE_CONFIG_PATH")));
  std::map<const std::string, QuantLib::Calendar> mismatches0 = eepgwde::Summit::Q::instance().fix();

The hard-coded map can be changed at runtime. The path() function sets up the directory to look for the Summit files.

The fix() function creates the Summit calendars. To create the calendars you need to have three sub-directories: COMP, NOTCOMP, WK.

Interface for Creating calendars

At minimum all that is needed is a call to fix(). The interface is simple enough to call. It's a function call fix() and it uses a hard-coded map.

  path = eepgwde::Summit::Q::instance().path(fs::path(::getenv("ELEVE_CONFIG_PATH")));
  std::map<const std::string, QuantLib::Calendar> mismatches0 = eepgwde::Summit::Q::instance().fix();

The hard-coded map can be changed at runtime. The path() function sets up the directory to look for the Summit files.

The fix() function creates the Summit calendars. To create the calendars you need to have three sub-directories: COMP, NOTCOMP, WK.

scal4


Generated on Thu Feb 18 21:30:12 2010 for eleve by  doxygen 1.5.6