VieSched++
VieVS VLBI Scheduling Software
VieVS::VieSchedpp Class Reference

this is the VieSched++ core class More...

#include <VieSchedpp.h>

Collaboration diagram for VieVS::VieSchedpp:

Public Member Functions

 VieSchedpp ()=default
 constructor More...
 
 VieSchedpp (const std::string &inputFile)
 constructor More...
 
void run ()
 start VieSched++ More...
 

Private Member Functions

void readSkdCatalogs ()
 read sked catalogs More...
 
void multiCoreSetup ()
 initialize parallel processing More...
 
void init_log ()
 initialize log files More...
 
std::map< int, double > summarizeSimulationResult (bool output=true)
 summarize simulation result More...
 
std::vector< std::tuple< std::string, int, double > > getPriorityCoefficients (const std::string &type, const std::vector< std::string > &header)
 get priority values from xml file More...
 
std::map< int, double > listBest (std::ofstream &of, const std::string &type, const std::map< int, std::vector< double >> &storage, const std::vector< std::tuple< std::string, int, double >> &priorityLookup)
 list best schedules based on simulations More...
 
std::map< int, double > printRecommendation (const std::map< int, double > &mfe_costs, const std::map< int, double > &rep_costs, const std::map< int, std::vector< double >> &storage, bool output=true)
 output best schedules based on simulations More...
 

Private Attributes

std::string inputFile_
 VieSchedpp.xml file. More...
 
std::string path_
 path to VieSchedpp.xml file More...
 
std::string sessionName_
 session name More...
 
boost::property_tree::ptree xml_
 content of VieSchedpp.xml file More...
 
SkdCatalogReader skdCatalogs_
 sked catalogs More...
 
std::vector< VieVS::MultiScheduling::ParametersmultiSchedParameters_
 list of all multi scheduling parameters More...
 

Detailed Description

this is the VieSched++ core class

this class starts the scheduling process. It monitores the creation of all schedules and all threads.

Author
Matthias Schartner
Date
02.07.2018

Constructor & Destructor Documentation

VieVS::VieSchedpp::VieSchedpp ( )
default

constructor

Author
Matthias Schartner
VieSchedpp::VieSchedpp ( const std::string &  inputFile)
explicit

constructor

Author
Matthias Schartner
Parameters
inputFilepath and name of input file (usually called VieSchedpp.xml)

Member Function Documentation

vector< tuple< string, int, double > > VieSchedpp::getPriorityCoefficients ( const std::string &  type,
const std::vector< std::string > &  header 
)
private

get priority values from xml file

Author
Matthias Schartner
Parameters
typeoutput type (mfe or rep)
headerlist of header file entries
Returns
list of tuples (first = name, second = index, third = priority value) of priority elements

Here is the caller graph for this function:

void VieSchedpp::init_log ( )
private

initialize log files

Author
Matthias Schartner

Here is the caller graph for this function:

map< int, double > VieSchedpp::listBest ( std::ofstream &  of,
const std::string &  type,
const std::map< int, std::vector< double >> &  storage,
const std::vector< std::tuple< std::string, int, double >> &  priorityLookup 
)
private

list best schedules based on simulations

Author
Matthias Schartner
Parameters
ofout file stream
typeoutput type (mfe or rep)
storagevalues per schedule (first = version, second = list of values)
priorityLookuplist of tuples (first = name, second = index, third = priority value) of priority elements
Returns
list of scores per session (key = version number, value = score)

Here is the call graph for this function:

Here is the caller graph for this function:

void VieSchedpp::multiCoreSetup ( )
private

initialize parallel processing

Author
Matthias Schartner

Here is the caller graph for this function:

map< int, double > VieSchedpp::printRecommendation ( const std::map< int, double > &  mfe_costs,
const std::map< int, double > &  rep_costs,
const std::map< int, std::vector< double >> &  storage,
bool  output = true 
)
private

output best schedules based on simulations

Author
Matthias Schartner
Parameters
mfe_costsmean formal error costs
rep_costsrepeatability costs
storagevalues per schedule (first = version, second = list of values)
outputflag if output should be printed to console
Returns
score per version

Here is the call graph for this function:

Here is the caller graph for this function:

void VieSchedpp::readSkdCatalogs ( )
private

read sked catalogs

Author
Matthias Schartner

Here is the call graph for this function:

Here is the caller graph for this function:

void VieSchedpp::run ( )

start VieSched++

Author
Matthias Schartner

Here is the call graph for this function:

Here is the caller graph for this function:

std::map< int, double > VieSchedpp::summarizeSimulationResult ( bool  output = true)
private

summarize simulation result

Author
Matthias Schartner
Parameters
outputflag if output should be printed to console
Returns
score per version

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

std::string VieVS::VieSchedpp::inputFile_
private

VieSchedpp.xml file.

std::vector<VieVS::MultiScheduling::Parameters> VieVS::VieSchedpp::multiSchedParameters_
private

list of all multi scheduling parameters

std::string VieVS::VieSchedpp::path_
private

path to VieSchedpp.xml file

std::string VieVS::VieSchedpp::sessionName_
private

session name

SkdCatalogReader VieVS::VieSchedpp::skdCatalogs_
private

sked catalogs

boost::property_tree::ptree VieVS::VieSchedpp::xml_
private

content of VieSchedpp.xml file


The documentation for this class was generated from the following files: