![]() |
VieSched++
VieVS VLBI Scheduling Software
|
representation of the VLBI scan time More...
#include <ScanTimes.h>


Public Types | |
| enum | AlignmentAnchor { AlignmentAnchor::start, AlignmentAnchor::end, AlignmentAnchor::individual } |
| observation time alignment anchor More... | |
Public Member Functions | |
| ScanTimes (unsigned int nsta) | |
| constructor More... | |
| void | setEndOfLastScan (const std::vector< unsigned int > &endOfLastScan) noexcept |
| sets the endtime of the last scan More... | |
| bool | updateAfterFillinmode (int idx, unsigned int endOfLastScan, unsigned int fieldSystem, unsigned int slewTime, unsigned int preobTime) noexcept |
| update times after fillin mode scan More... | |
| void | addTimes (int idx, unsigned int fieldSystem, unsigned int slew, unsigned int preob) noexcept |
| adds the times for an element More... | |
| void | giveNewId () |
| set new id More... | |
| const std::vector< unsigned int > | getEndOfSlewTimes () const noexcept |
| get end of slew times More... | |
| void | removeElement (int idx) noexcept |
| removes an element More... | |
| unsigned int | getFieldSystemDuration (int idx) const noexcept |
| get field system duration More... | |
| unsigned int | getSlewDuration (int idx) const noexcept |
| get slew duration More... | |
| unsigned int | getIdleDuration (int idx) const noexcept |
| get idle duration More... | |
| unsigned int | getPreobDuration (int idx) const noexcept |
| get preob duration More... | |
| unsigned int | getObservingDuration (int idx) const noexcept |
| get observing duration More... | |
| unsigned int | getObservingDuration (unsigned long idx1, unsigned long idx2) const noexcept |
| get observing duration between two stations More... | |
| unsigned int | getObservingDuration () const noexcept |
| get total observing duration More... | |
| unsigned int | getScanDuration () const noexcept |
| get total scan duration More... | |
| unsigned int | getFieldSystemTime (int idx, Timestamp ts=Timestamp::start) const noexcept |
| get field system time More... | |
| unsigned int | getSlewTime (int idx, Timestamp ts=Timestamp::start) const noexcept |
| get slew time More... | |
| unsigned int | getIdleTime (int idx, Timestamp ts=Timestamp::start) const noexcept |
| get idle time More... | |
| unsigned int | getPreobTime (int idx, Timestamp ts=Timestamp::start) const noexcept |
| get preob time More... | |
| unsigned int | getObservingTime (int idx, Timestamp ts=Timestamp::start) const noexcept |
| get observing time More... | |
| unsigned int | getObservingTime (int idx1, int idx2, Timestamp ts=Timestamp::start) const noexcept |
| get observing time between two stations More... | |
| unsigned int | getObservingTime (Timestamp ts=Timestamp::start) const noexcept |
| get total observing time More... | |
| unsigned int | getScanTime (Timestamp ts=Timestamp::start) const noexcept |
| get total scan time More... | |
| void | alignStartTimes () noexcept |
| align start times More... | |
| void | setObservingStarts (unsigned int scanStart) noexcept |
| set observing start time More... | |
| void | setObservingStarts (const std::vector< unsigned int > &scanStart) noexcept |
| set observing start time if they are different for the stations More... | |
| void | setSlewTime (int idx, unsigned int new_slewtime) noexcept |
| updates the slewtime of one element More... | |
| void | setObservingTimes (const std::vector< unsigned int > &scanTimes) noexcept |
| adds scan times to each element More... | |
| void | setObservingTimes (unsigned int scanTimes) noexcept |
| set observing times More... | |
| void | setObservingTime (int idx, unsigned int time, Timestamp ts) |
| set observing time More... | |
| bool | reduceObservingTime (int idx, unsigned int maxObsTime, Timestamp ts) |
| reduce observing time More... | |
| void | addTagalongStationTime (const VieVS::PointingVector &pv_start, const VieVS::PointingVector &pv_end, unsigned int slewtime, unsigned int currentTime, unsigned int fieldSystem, unsigned int preob) |
| add tagalong station times More... | |
| bool | setPreobTime (const std::vector< unsigned int > &preob) |
| set preob time for all stations More... | |
| bool | setPreobTime (int idx, unsigned int preob) |
| set preob time for one station More... | |
| int | removeUnnecessaryObservingTime (Timestamp ts) |
| remove unnecessary observing time More... | |
Public Member Functions inherited from VieVS::VieVS_Object | |
| 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... | |
Static Public Member Functions | |
| static void | setAlignmentAnchor (AlignmentAnchor newAnchor) |
| set observation time alignment anchor More... | |
| static AlignmentAnchor | getAlignmentAnchor () |
| get alignment anchor More... | |
Private Member Functions | |
| void | removeIdleTime () |
| remove idle times More... | |
Private Attributes | |
| std::vector< unsigned int > | endOfLastScan_ |
| end of last scan More... | |
| std::vector< unsigned int > | endOfFieldSystemTime_ |
| end of setup time More... | |
| std::vector< unsigned int > | endOfSlewTime_ |
| end of slew time More... | |
| std::vector< unsigned int > | endOfIdleTime_ |
| end of idle time More... | |
| std::vector< unsigned int > | endOfPreobTime_ |
| end of preob time More... | |
| std::vector< unsigned int > | endOfObservingTime_ |
| end of scan time More... | |
| std::vector< unsigned int > | endOfPostobTime_ |
| end of postob time More... | |
Static Private Attributes | |
| static unsigned long | nextId = 0 |
| next id for this object type More... | |
| static AlignmentAnchor | anchor = ScanTimes::AlignmentAnchor::start |
| scan alignment anchor More... | |
representation of the VLBI scan time
all times are stored in seconds since session start
|
strong |
|
explicit |
constructor
| nsta | number of stations |

| void ScanTimes::addTagalongStationTime | ( | const VieVS::PointingVector & | pv_start, |
| const VieVS::PointingVector & | pv_end, | ||
| unsigned int | slewtime, | ||
| unsigned int | currentTime, | ||
| unsigned int | fieldSystem, | ||
| unsigned int | preob | ||
| ) |
add tagalong station times
| pv_start | start pointing vector |
| pv_end | end pointing vector |
| slewtime | slew time in seconds |
| currentTime | current time of antenna |
| fieldSystem | field system time in seconds |
| preob | calibration time in seconds |


|
noexcept |
adds the times for an element
| idx | index of which element should be updated |
| fieldSystem | field system time in seconds |
| slew | slew time in seconds |
| preob | calibration time in seconds |

|
noexcept |
align start times


|
inlinestatic |
get alignment anchor


|
inlinenoexcept |
get end of slew times


|
inlinenoexcept |
get field system duration
| idx | index |

|
inlinenoexcept |
get field system time
| idx | index |
| ts | time stamp |

|
inlinenoexcept |
get idle duration
| idx | index |

|
inlinenoexcept |
get idle time
| idx | index |
| ts | time stamp |
|
inlinenoexcept |
get observing duration
| idx | index |

|
inlinenoexcept |
get observing duration between two stations
| idx1 | index of first station |
| idx2 | index of second station |
|
inlinenoexcept |
get total observing duration


|
inlinenoexcept |
get observing time
| idx | index |
| ts | time stamp |

|
inlinenoexcept |
get observing time between two stations
| idx1 | index of first station |
| idx2 | index of second station |
| ts | time stamp |
|
inlinenoexcept |
get total observing time
| ts | time stamp |
|
inlinenoexcept |
get preob duration
| idx | index |

|
inlinenoexcept |
get preob time
| idx | index |
| ts | time stamp |

|
inlinenoexcept |
get total scan duration


|
inlinenoexcept |
get total scan time
| ts | time stamp |


|
inlinenoexcept |
get slew duration
| idx | index |

|
inlinenoexcept |
get slew time
| idx | index |
| ts | time stamp |

|
inline |
set new id

| bool ScanTimes::reduceObservingTime | ( | int | idx, |
| unsigned int | maxObsTime, | ||
| Timestamp | ts | ||
| ) |
reduce observing time
| idx | index |
| maxObsTime | maximum observing time |
| ts | time stamp |


|
noexcept |
removes an element
| idx | index of the element that should be removed |


|
private |
remove idle times


| int ScanTimes::removeUnnecessaryObservingTime | ( | Timestamp | ts | ) |
remove unnecessary observing time
| ts | time stamp |


|
inlinestatic |
set observation time alignment anchor
| newAnchor | alignment anchor |

|
inlinenoexcept |
sets the endtime of the last scan
this is simultaneously the start time of this new scan
| endOfLastScan | end time of last scan in seconds since session start |

|
noexcept |
set observing start time
| scanStart | start time |


|
noexcept |
set observing start time if they are different for the stations
| scanTimes | new observing times |
| void ScanTimes::setObservingTime | ( | int | idx, |
| unsigned int | time, | ||
| Timestamp | ts | ||
| ) |
set observing time
| idx | index |
| time | new observing time |
| ts | time stamp |


|
noexcept |
adds scan times to each element
Order of the scan times must be the same as the order of the element
| scanTimes | all scan times in seconds |

|
noexcept |
set observing times
| scanTimes | new observing times |

| bool VieVS::ScanTimes::setPreobTime | ( | const std::vector< unsigned int > & | preob | ) |
set preob time for all stations
| preob | preob time |

| bool ScanTimes::setPreobTime | ( | int | idx, |
| unsigned int | preob | ||
| ) |
set preob time for one station
| idx | index |
| preob | preob time |
|
noexcept |
updates the slewtime of one element
| idx | index of the element whichs slewtime is chanded |
| new_slewtime | new slew time in seconds |


|
inlinenoexcept |
update times after fillin mode scan
| idx | index |
| endOfLastScan | end of last scan |
| fieldSystem | field system time in seconds |
| slewTime | slew time in seconds |
| preobTime | preob time in seconds |

|
staticprivate |
scan alignment anchor
|
private |
end of setup time
|
private |
end of idle time
|
private |
end of last scan
|
private |
end of scan time
|
private |
end of postob time
|
private |
end of preob time
|
private |
end of slew time
|
staticprivate |
next id for this object type