![]() |
VieSched++
VieVS VLBI Scheduling Software
|
MODE block. More...
#include <Mode.h>
Public Member Functions | |
Mode (std::string name, unsigned long nsta) | |
constructor More... | |
boost::property_tree::ptree | toPropertytree (const std::vector< std::string > &stations) const |
converts object to property tree More... | |
void | addBlock (const std::shared_ptr< const If > &newIf, const std::vector< unsigned long > &staids) |
add new ID block More... | |
void | addBlock (const std::shared_ptr< const Bbc > &newBbc, const std::vector< unsigned long > &staids) |
add new BBC block More... | |
void | addBlock (const std::shared_ptr< const Freq > &newFreq, const std::vector< unsigned long > &staids) |
add new FREQ block More... | |
void | addBlock (const std::shared_ptr< const Track > &newTrack, const std::vector< unsigned long > &staids) |
add new Tracks block More... | |
void | addBlock (const std::shared_ptr< const std::string > &newTrackFrameFormat, const std::vector< unsigned long > &staids) |
add new track frame format block More... | |
void | calcRecordingRates () |
calculate recording rates More... | |
void | setRecordingRates (const std::string &band, double recRate) |
set recording rates for simple manual model More... | |
void | setEfficiencyFactor (double eff) |
set efficiency factor for simple manual model More... | |
void | setBands (const std::set< std::string > &bands) |
set band names for simple manual model More... | |
double | recordingRate (unsigned long staid1, unsigned long staid2, const std::string &band) const |
recording rate for observation More... | |
double | efficiency (unsigned long staid1, unsigned long staid2) const |
efficiency factor between stations More... | |
boost::optional< const std::shared_ptr< const If > & > | getIf (unsigned long staid) const |
get IF block per station More... | |
boost::optional< const std::shared_ptr< const Bbc > & > | getBbc (unsigned long staid) const |
get BBC block per station More... | |
boost::optional< const std::shared_ptr< const Freq > & > | getFreq (unsigned long staid) const |
get FREQ block per station More... | |
boost::optional< const std::shared_ptr< const Track > & > | getTracks (unsigned long staid) const |
get TRACKS block per station More... | |
boost::optional< const std::shared_ptr< const std::string > & > | getTrackFrameFormat (unsigned long staid) const |
get track frame format block per station More... | |
boost::optional< const std::vector< unsigned long > & > | getAllStationsWithBlock (const std::shared_ptr< const If > &this_if) const |
get list of all station per IF block More... | |
boost::optional< const std::vector< unsigned long > & > | getAllStationsWithBlock (const std::shared_ptr< const Bbc > &bbc) const |
get list of all station per BBC block More... | |
boost::optional< const std::vector< unsigned long > & > | getAllStationsWithBlock (const std::shared_ptr< const Freq > &freq) const |
get list of all station per FREQ block More... | |
boost::optional< const std::vector< unsigned long > & > | getAllStationsWithBlock (const std::shared_ptr< const Track > &track) const |
get list of all station per TRACKS block More... | |
boost::optional< const std::vector< unsigned long > & > | getAllStationsWithBlock (const std::shared_ptr< const std::string > &trackFrameFormat) const |
get list of all station per track frame format More... | |
void | summary (std::ofstream &of, const std::vector< std::string > &stations) const |
create summary More... | |
void | operationNotesSummary (std::ofstream &of, const std::vector< std::string > &stations) const |
create summary for operation notes More... | |
double | recordingRate (unsigned long staid) const |
get recording rate per station More... | |
void | toVexModeDefiniton (std::ofstream &of, const std::vector< std::string > &stations) const |
writes MODE block in vex format More... | |
const std::set< std::string > & | getAllBands () const |
get list of all bands More... | |
unsigned long | getNSta () const |
getter for number of stations More... | |
void | changeIf (int idx, unsigned long staid) |
change IF for station More... | |
void | changeBbc (int idx, unsigned long staid) |
change BBC for station More... | |
void | changeTracks (int idx, unsigned long staid) |
change TRACK for station More... | |
void | changeTrackFrameFormat (int idx, unsigned long staid) |
change track frame format for station More... | |
void | changeFreq (int idx, unsigned long staid) |
change FREQ for station More... | |
void | removeFreq (int idx) |
remove FREQ block More... | |
void | removeBbc (int idx) |
remove BBC block More... | |
void | removeIf (int idx) |
remove IF block More... | |
void | removeTracks (int idx) |
remove TRACKS block More... | |
void | removeTrackFrameFormats (int idx) |
remove track frame format More... | |
![]() | |
VieVS_NamedObject (std::string name, unsigned long id) | |
constructor More... | |
VieVS_NamedObject (std::string name, std::string alternativeName, unsigned long id) | |
constructor More... | |
const std::string & | getName () const |
get object name More... | |
const std::string & | getAlternativeName () const |
get object alternative name More... | |
bool | hasAlternativeName () const |
check if object has alternative name More... | |
bool | hasName (const std::string &name) const |
check if object has name More... | |
void | changeName (const std::string &newName) |
change name of object More... | |
![]() | |
VieVS_Object (unsigned long id) | |
constructor More... | |
const unsigned long | getId () const |
get object id More... | |
bool | hasValidId () const |
check if id is valid More... | |
bool | hasId (unsigned long id) const |
check if object has specific id More... | |
void | setId (unsigned long id) |
set object id More... | |
std::string | printId () const |
object id string More... | |
Private Member Functions | |
boost::property_tree::ptree | staids2propertyTree (const std::string &name, const std::vector< unsigned long > &ids, const std::vector< std::string > &staNames) const |
station ids to property tree More... | |
Private Attributes | |
unsigned long | nsta_ |
number of stations More... | |
std::vector< std::pair< std::shared_ptr< const If >, std::vector< unsigned long > > > | ifs_ |
all IF blocks with corresponding station ids More... | |
std::vector< std::pair< std::shared_ptr< const Bbc >, std::vector< unsigned long > > > | bbcs_ |
all BBC blocks with corresponding station ids More... | |
std::vector< std::pair< std::shared_ptr< const Freq >, std::vector< unsigned long > > > | freqs_ |
all FREQ blocks with corresponding station ids More... | |
std::vector< std::pair< std::shared_ptr< const Track >, std::vector< unsigned long > > > | tracks_ |
all TRACKS blocks with corresponding station ids More... | |
std::vector< std::pair< std::shared_ptr< const std::string >, std::vector< unsigned long > > > | track_frame_formats_ |
all track frame format blocks with corresponding station ids More... | |
std::unordered_map< std::pair< unsigned long, unsigned long >, std::unordered_map< std::string, double >, boost::hash< std::pair< unsigned long, unsigned long > > > | staids2recordingRate_ |
recording rate per station ids and band More... | |
std::unordered_map< std::pair< unsigned long, unsigned long >, double, boost::hash< std::pair< unsigned long, unsigned long > > > | staids2efficiency_ |
efficiency per station ids More... | |
std::unordered_map< unsigned long, double > | staid2totalRecordingRate_ |
total recording rate per station id More... | |
std::set< std::string > | bands_ |
list of all bands More... | |
Static Private Attributes | |
static unsigned long | nextId = 0 |
next id for this object type More... | |
MODE block.
following vex standard
Mode::Mode | ( | std::string | name, |
unsigned long | nsta | ||
) |
constructor
name | observing mode name |
nsta | number of stations |
|
inline |
add new ID block
newIf | new IF block |
staids | corresponding station Ids |
|
inline |
add new BBC block
newBbc | new BBC block |
staids | corresponding station Ids |
|
inline |
add new FREQ block
newFreq | new FREQ block |
staids | corresponding station Ids |
|
inline |
add new Tracks block
newTrack | new Tracks block |
staids | corresponding station Ids |
|
inline |
add new track frame format block
newTrackFrameFormat | new track frame format block |
staids | corresponding station Ids |
void Mode::calcRecordingRates | ( | ) |
calculate recording rates
void Mode::changeBbc | ( | int | idx, |
unsigned long | staid | ||
) |
change BBC for station
This function is used for setting up manual observing mode in the GUI It changes the BBC for station staid
idx | index of new BBC |
staid | target station |
void Mode::changeFreq | ( | int | idx, |
unsigned long | staid | ||
) |
change FREQ for station
This function is used for setting up manual observing mode in the GUI It changes the FREQ for station staid
idx | index of new FREQ |
staid | target station |
void Mode::changeIf | ( | int | idx, |
unsigned long | staid | ||
) |
change IF for station
This function is used for setting up manual observing mode in the GUI It changes the IF for station staid
idx | index of new IF |
staid | target station |
void Mode::changeTrackFrameFormat | ( | int | idx, |
unsigned long | staid | ||
) |
change track frame format for station
This function is used for setting up manual observing mode in the GUI It changes the track frame format for station staid
idx | index of new track frame format |
staid | target station |
void Mode::changeTracks | ( | int | idx, |
unsigned long | staid | ||
) |
change TRACK for station
This function is used for setting up manual observing mode in the GUI It changes the TRACK for station staid
idx | index of new TRACK |
staid | target station |
double Mode::efficiency | ( | unsigned long | staid1, |
unsigned long | staid2 | ||
) | const |
efficiency factor between stations
efficiency is based on bit efficiency and correlator efficiency Bit efficiency: 1-bit: 0.5715 2-bit: 0.6366 Correlator efficiency: DiFX: 0.97
staid1 | station 1 |
staid2 | station 2 |
|
inline |
get list of all bands
boost::optional< const std::vector< unsigned long > & > Mode::getAllStationsWithBlock | ( | const std::shared_ptr< const If > & | this_if | ) | const |
get list of all station per IF block
this_if | target IF block |
boost::optional< const std::vector< unsigned long > & > Mode::getAllStationsWithBlock | ( | const std::shared_ptr< const Bbc > & | bbc | ) | const |
get list of all station per BBC block
bbc | target BBC block |
boost::optional< const std::vector< unsigned long > & > Mode::getAllStationsWithBlock | ( | const std::shared_ptr< const Freq > & | freq | ) | const |
get list of all station per FREQ block
freq | target FREQ block |
boost::optional< const std::vector< unsigned long > & > Mode::getAllStationsWithBlock | ( | const std::shared_ptr< const Track > & | track | ) | const |
get list of all station per TRACKS block
track | target TRACKS block |
boost::optional< const std::vector< unsigned long > & > Mode::getAllStationsWithBlock | ( | const std::shared_ptr< const std::string > & | trackFrameFormat | ) | const |
get list of all station per track frame format
trackFrameFormat | target track frame format |
boost::optional< const std::shared_ptr< const Bbc > & > Mode::getBbc | ( | unsigned long | staid | ) | const |
get BBC block per station
staid | station id |
boost::optional< const std::shared_ptr< const Freq > & > Mode::getFreq | ( | unsigned long | staid | ) | const |
get FREQ block per station
staid | station id |
boost::optional< const std::shared_ptr< const If > & > Mode::getIf | ( | unsigned long | staid | ) | const |
get IF block per station
staid | station id |
|
inline |
getter for number of stations
boost::optional< const std::shared_ptr< const std::string > & > Mode::getTrackFrameFormat | ( | unsigned long | staid | ) | const |
get track frame format block per station
staid | station id |
boost::optional< const std::shared_ptr< const Track > & > Mode::getTracks | ( | unsigned long | staid | ) | const |
get TRACKS block per station
staid | station id |
void Mode::operationNotesSummary | ( | std::ofstream & | of, |
const std::vector< std::string > & | stations | ||
) | const |
create summary for operation notes
of | outstream |
stations | station names |
double Mode::recordingRate | ( | unsigned long | staid1, |
unsigned long | staid2, | ||
const std::string & | band | ||
) | const |
recording rate for observation
staid1 | station 1 |
staid2 | station 2 |
band | observed band |
double Mode::recordingRate | ( | unsigned long | staid | ) | const |
get recording rate per station
staid | station id |
|
inline |
remove BBC block
This function is used for setting up manual observing mode in the GUI
idx | index of block which whould be removed |
|
inline |
remove FREQ block
This function is used for setting up manual observing mode in the GUI
idx | index of block which whould be removed |
|
inline |
remove IF block
This function is used for setting up manual observing mode in the GUI
idx | index of block which whould be removed |
|
inline |
remove track frame format
This function is used for setting up manual observing mode in the GUI
idx | index of block which whould be removed |
|
inline |
remove TRACKS block
This function is used for setting up manual observing mode in the GUI
idx | index of block which whould be removed |
|
inline |
set band names for simple manual model
bands | list of all bands |
void Mode::setEfficiencyFactor | ( | double | eff | ) |
set efficiency factor for simple manual model
eff | efficiency factor |
void Mode::setRecordingRates | ( | const std::string & | band, |
double | recRate | ||
) |
set recording rates for simple manual model
band | band name |
recRate | recording rate |
|
private |
station ids to property tree
name | block name |
ids | station ids |
staNames | station names |
void Mode::summary | ( | std::ofstream & | of, |
const std::vector< std::string > & | stations | ||
) | const |
create summary
of | outstream |
stations | station names |
boost::property_tree::ptree Mode::toPropertytree | ( | const std::vector< std::string > & | stations | ) | const |
converts object to property tree
stations | station names |
void Mode::toVexModeDefiniton | ( | std::ofstream & | of, |
const std::vector< std::string > & | stations | ||
) | const |
writes MODE block in vex format
of | vex file stream |
stations | station names |
|
private |
list of all bands
|
private |
all BBC blocks with corresponding station ids
|
private |
all FREQ blocks with corresponding station ids
|
private |
all IF blocks with corresponding station ids
|
staticprivate |
next id for this object type
|
private |
number of stations
|
private |
total recording rate per station id
|
private |
efficiency per station ids
|
private |
recording rate per station ids and band
|
private |
all track frame format blocks with corresponding station ids
|
private |
all TRACKS blocks with corresponding station ids