HLCC Documentation 3.0.1
Loading...
Searching...
No Matches
hlcc::eltpk::OldbInterface Class Reference

#include <oldbInterface.hpp>

Inheritance diagram for hlcc::eltpk::OldbInterface:

Public Member Functions

 OldbInterface (const std::string &prefix="")
 
virtual ~OldbInterface ()
 
void Init (::hlcc::eltpk::Config &config)
 
void PublishTargets (ElapsedTimeStats &stats)
 
void PublishCurrentPositions (ElapsedTimeStats &stats, const bool &radec_validity)
 
void SetTargetRaDecValidity (const bool &ra_dec_validity)
 
double GetTimeLst ()
 
void SetTimeLst (double lst)
 
void PublishCurrentTime (ElapsedTimeStats &stats)
 
void PublishSiteInfo (ElapsedTimeStats &stats)
 
void PublishPresetArgs (const std::shared_ptr<::ccsinsif::PresetArgs > &preset_args)
 
ptk::HorizonPositionEsoTimestamped GetCurrentObservedAltAz ()
 
void SetConfig (hlcc::eltpk::Config &cfg)
 
void SetControlState (const std::string &value, const taiclock::TaiClock::time_point &timestamp, ElapsedTimeStats &stats)
 
void SetTrsHksDataState (bool hks_data_ok)
 
void WriteTrsHksData (ptk::Dut1 dut1, ptk::Arcsecs xp, ptk::Arcsecs yp)
 
std::optional< ptk::Dut1 > ReadTrsHksDut1 ()
 
std::optional< ptk::Arcsecs > ReadTrsHksPolar (std::string oldb_key)
 
void SetConfig (const rad::Config &cfg)
 
void SetControlState (const std::string &value)
 
OldbDataGetOldbData ()
 
 OldbInterface (const OldbInterface &)=delete
 
OldbInterfaceoperator= (const OldbInterface &)=delete
 Disable copy constructor.
 
std::shared_ptr< determ::LlnetioPubGetLlnetioPub ()
 Disable assignment operator.
 
std::shared_ptr< determ::MudpiPubGetMudpiPub ()
 
void UpdateHeartbeat ()
 

Detailed Description

This class is the interface to the CII OLDB.

Constructor & Destructor Documentation

◆ OldbInterface() [1/2]

hlcc::eltpk::OldbInterface::OldbInterface ( const std::string & prefix = "")

Constructor.

Parameters
[in]prefixString used as prefix when building the keys. Typically prefix will be set by Application::Init calling rad::OldbInterface::SetPrefix.

Constructor.

◆ ~OldbInterface()

hlcc::eltpk::OldbInterface::~OldbInterface ( )
virtual

Destructor

◆ OldbInterface() [2/2]

hlcc::eltpk::OldbInterface::OldbInterface ( const OldbInterface & )
delete

Member Function Documentation

◆ GetCurrentObservedAltAz()

HorizonPositionEsoTimestamped hlcc::eltpk::OldbInterface::GetCurrentObservedAltAz ( )

Retrieves the current observed (alt,az) position and returns it as an HorizonPositionEso

◆ GetLlnetioPub()

std::shared_ptr< determ::LlnetioPub > hlcc::eltpk::OldbInterface::GetLlnetioPub ( )

Disable assignment operator.

◆ GetMudpiPub()

std::shared_ptr< determ::MudpiPub > hlcc::eltpk::OldbInterface::GetMudpiPub ( )

◆ GetOldbData()

OldbData & hlcc::eltpk::OldbInterface::GetOldbData ( )

◆ GetTimeLst()

double hlcc::eltpk::OldbInterface::GetTimeLst ( )

Returns time_lst

◆ Init()

void hlcc::eltpk::OldbInterface::Init ( ::hlcc::eltpk::Config & config)

Creates an ObservablePublisher for pub/sub and OLDB publishing. Initializes OLDB datapoints (target_alt_az) and publishers (target_alt_az_publisher).

◆ operator=()

OldbInterface & hlcc::eltpk::OldbInterface::operator= ( const OldbInterface & )
delete

Disable copy constructor.

◆ PublishCurrentPositions()

void hlcc::eltpk::OldbInterface::PublishCurrentPositions ( ElapsedTimeStats & stats,
const bool & radec_validity )

Publishes all current positions (currently current_alt_az, current_ra_dec_backcalc, current_hour_angle, tracking_data).

◆ PublishCurrentTime()

void hlcc::eltpk::OldbInterface::PublishCurrentTime ( ElapsedTimeStats & stats)

Publishes current_time.

◆ PublishPresetArgs()

void hlcc::eltpk::OldbInterface::PublishPresetArgs ( const std::shared_ptr<::ccsinsif::PresetArgs > & preset_args)

Publishes the received preset args, upon a preset request

◆ PublishSiteInfo()

void hlcc::eltpk::OldbInterface::PublishSiteInfo ( ElapsedTimeStats & stats)

Publishes site_info.

◆ PublishTargets()

void hlcc::eltpk::OldbInterface::PublishTargets ( ElapsedTimeStats & stats)

Publishes all target coordinates (currently only ALT-AZ target).

◆ ReadTrsHksDut1()

std::optional< ptk::Dut1 > hlcc::eltpk::OldbInterface::ReadTrsHksDut1 ( )

Reads TRS HKS value for DUT1 from the OLDB. Empty return in case of error or bad OLDB quality. This can be used as a fallback mechanism after failure of reading the data from TRS HKS.

◆ ReadTrsHksPolar()

std::optional< ptk::Arcsecs > hlcc::eltpk::OldbInterface::ReadTrsHksPolar ( std::string oldb_key)

Reads TRS HKS value for polar motion (X_p or Y_p) from the OLDB. Empty return in case of error or bad OLDB quality. This can be used as a fallback mechanism after failure of reading the data from TRS HKS.

◆ SetConfig() [1/2]

void hlcc::eltpk::OldbInterface::SetConfig ( const rad::Config & cfg)

◆ SetConfig() [2/2]

void hlcc::eltpk::OldbInterface::SetConfig ( hlcc::eltpk::Config & cfg)

Will call the base class SetConfig method, and will also write to OLDB all config values specific to this module.

◆ SetControlState() [1/2]

void hlcc::eltpk::OldbInterface::SetControlState ( const std::string & value)

◆ SetControlState() [2/2]

void hlcc::eltpk::OldbInterface::SetControlState ( const std::string & value,
const taiclock::TaiClock::time_point & timestamp,
ElapsedTimeStats & stats )

We do not use the base class method void SetControlState(const std::string& value) because writing control state to OLDB is done frequently, and we want to use CiiOldbDataPointAsync and also keep the option to evaluate ElapsedTimeStats.

◆ SetTargetRaDecValidity()

void hlcc::eltpk::OldbInterface::SetTargetRaDecValidity ( const bool & ra_dec_validity)

Updates the quality of the relevant RaDec datapoints.

◆ SetTimeLst()

void hlcc::eltpk::OldbInterface::SetTimeLst ( double lst)

Sets time_lst

◆ SetTrsHksDataState()

void hlcc::eltpk::OldbInterface::SetTrsHksDataState ( bool hks_data_ok)

Sets the flag for the quality of the TRS HKS data such as DUT1 cached by this application. The impl currently uses the RAD oldb writer, which is fine as long as we don´t call this method from a fast loop.

◆ UpdateHeartbeat()

void hlcc::eltpk::OldbInterface::UpdateHeartbeat ( )

◆ WriteTrsHksData()

void hlcc::eltpk::OldbInterface::WriteTrsHksData ( ptk::Dut1 dut1,
ptk::Arcsecs xp,
ptk::Arcsecs yp )

Writes the TRS HKS data to the OLDB. The impl currently uses the RAD oldb writer, which is fine as long as we don´t call this method from a fast loop.


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