Earth Observation Mission CFI Software Visibility Software User Manual |
Public Member Functions | |
VisibilityList () | |
Default constructor. | |
~VisibilityList () NOEXCEPT | |
Class destructor. | |
EECFI::VisibilityList | computeNot (OrbitId &orbitId, long orderSwitch) const |
Get the list of complementary list of time segments. | |
EECFI::VisibilityList | computeOr (OrbitId &orbitId, long orderSwitch, const EECFI::VisibilityList &list2) const |
Get the union of two lists. | |
EECFI::VisibilityList | computeAnd (OrbitId &orbitId, long orderSwitch, const EECFI::VisibilityList &list2) const |
Get the intersection of two lists. | |
void | sort (OrbitId &orbitId) |
Sort the list by the start time of the visibility segments. | |
void | merge (OrbitId &orbitId, long orderSwitch) |
Merge the list. The overlapping VisibilitySegments are merged. | |
void | delta (OrbitId &orbitId, double entryOffset, double exitOffset) |
Add the input margins to every visibility segment. |
EECFI::VisibilityList::VisibilityList | ( | ) |
Default constructor.
EECFI::VisibilityList::~VisibilityList | ( | ) |
Class destructor.
EECFI::VisibilityList EECFI::VisibilityList::computeAnd | ( | OrbitId & | orbitId, | |
long | orderSwitch, | |||
const EECFI::VisibilityList & | list2 | |||
) | const |
Get the intersection of two lists.
orbitId | Orbit Id. | |
orderSwitch | Indicates if the input list is sorted by start times. If input segments are already sorted, the flag should be set to XVCFI_TIME_ORDER to save computation time. (XV_time_segments_order_enum in VisibilityData.h) | |
list2 | Second list to be intersected with the input list. |
References EECFI::CfiClass::throwWarn.
EECFI::VisibilityList EECFI::VisibilityList::computeNot | ( | OrbitId & | orbitId, | |
long | orderSwitch | |||
) | const |
Get the list of complementary list of time segments.
orbitId | Orbit Id. | |
orderSwitch | Indicates if the input list is sorted by start times. If input segments are already sorted, the flag should be set to XVCFI_TIME_ORDER to save computation time. (XV_time_segments_order_enum in VisibilityData.h) |
References EECFI::CfiClass::throwWarn.
EECFI::VisibilityList EECFI::VisibilityList::computeOr | ( | OrbitId & | orbitId, | |
long | orderSwitch, | |||
const EECFI::VisibilityList & | list2 | |||
) | const |
Get the union of two lists.
orbitId | Orbit Id. | |
orderSwitch | Indicates if the input list is sorted by start times. If input segments are already sorted, the flag should be set to XVCFI_TIME_ORDER to save computation time. (XV_time_segments_order_enum in VisibilityData.h) | |
list2 | Second list to be joined to the input list. |
References EECFI::CfiClass::throwWarn.
void EECFI::VisibilityList::delta | ( | OrbitId & | orbitId, | |
double | entryOffset, | |||
double | exitOffset | |||
) |
Add the input margins to every visibility segment.
orbitId | Orbit Id. | |
entryOffset | Number of seconds to add/subtract at the beginning of every segment. If entry_offset > 0, the entry_offset is added at the beginning of the segments making them shorter. | |
exitOffset | Number of seconds to add/subtract at the end of every segment. If exit_offset > 0 the exit_offset is added at the end of the segments making them longer. |
References EECFI::CfiClass::throwWarn.
void EECFI::VisibilityList::merge | ( | OrbitId & | orbitId, | |
long | orderSwitch | |||
) |
Merge the list. The overlapping VisibilitySegments are merged.
orbitId | Orbit Id. | |
orderSwitch | Indicates if the input list is sorted by start times. If input segments are already sorted, the flag should be set to XVCFI_TIME_ORDER to save computation time. (XV_time_segments_order_enum in VisibilityData.h) |
References EECFI::CfiClass::throwWarn.
void VisibilityList::sort | ( | OrbitId & | orbitId | ) |
Sort the list by the start time of the visibility segments.
orbitId | Orbit Id. |
References EECFI::CfiClass::throwWarn.