CARMA C++
carma::control::SignalPathMapperHandle Class Reference

Manages control's reference to SignalPathMapper DO. More...

#include <carma/control/SignalPathMapperHandle.h>

Inheritance diagram for carma::control::SignalPathMapperHandle:
carma::control::RemoteObjHandleT< T > carma::control::RemoteObjHandleBase

Public Member Functions

void addAntenna (unsigned short antNo, unsigned short subarrayNo)
 Methods to add/remove an antenna from a subarray. More...
 
void addCorrelator (ControlCorrelatorDesignation type, unsigned short subarrayNo)
 
void assignWalshColumn (carma::signalpath::SignalPathMapperControl::WalshColumnAssignment wca)
 Set a walsh column explicitly for an antenna. More...
 
void checkConfigurationSuccess (unsigned short bandNo)
 
void checkConfigurationValidity (unsigned short bandNo, const ::std::string &confName, unsigned short subarrayNo, ControlCorrelatorDesignation type)
 
void clearAstroBandConfiguration (unsigned short bandNo, unsigned short subarrayNo, ControlCorrelatorDesignation type)
 Clear an astro band configuration. More...
 
void clearWalshColumnAssignment (unsigned short antNo)
 Clear a walsh column assignment. More...
 
void configureAstroBand (unsigned short bandNo, const ::std::string &confName, unsigned short subarrayNo, ControlCorrelatorDesignation type)
 Configure an astro band. More...
 
carma::util::SeqShortgetActiveAstroBandNoSeq (ControlCorrelatorDesignation type)
 
::std::vector< short > getActiveAstroBandNoVec (ControlCorrelatorDesignation type)
 
::std::vector
< carma::signalpath::SignalPathMapperControl::AstroBand
getActiveAstroBands (ControlCorrelatorDesignation type)
 Query active astro bands managed by this correlator. More...
 
::std::vector
< carma::signalpath::SignalPathMapperControl::CorrelatorBand
getActiveCorrelatorBands (ControlCorrelatorDesignation type)
 Query active correlator bands managed by this correlator. More...
 
std::vector
< carma::signalpath::SignalPathMapperControl::Antenna
getAntennas (unsigned short astroBandNo)
 Query antennas. More...
 
int getAstroBandForCorrelatorBand (unsigned short corrBandNo, ControlCorrelatorDesignation type)
 
::std::vector
< carma::signalpath::SignalPathMapperControl::AstroBand
getAstroBandsForConfiguration (const ::std::string &confName, unsigned short subarrayNo, ControlCorrelatorDesignation type)
 Query astro bands for which a mapping is specified by the requested configuration. More...
 
std::vector
< carma::signalpath::SignalPathMapperControl::BlockDownconverterSetting
getBdcSettings (unsigned short astroBandNo)
 Query block downconverter settings. More...
 
::std::string getConfname (unsigned short astroBandNo)
 
::std::vector
< carma::signalpath::SignalPathMapperControl::CorrelatorBandInput
getCorrelatorBandInputMap (const carma::signalpath::SignalPathMapperControl::CorrelatorBand &band)
 Query correlator band input mapping. More...
 
carma::util::SeqShortgetCorrelatorBandNoSeq (unsigned astroBandNo)
 
::std::vector
< carma::signalpath::SignalPathMapperControl::CorrelatorBand
getCorrelatorBands (unsigned astroBandNo)
 Query active correlator bands in this AstroBand. More...
 
ControlCorrelatorDesignation getCorrTypeForAstroBand (unsigned short astroBandNo)
 Query the correlator type for a given astroband. More...
 
std::vector
< carma::switchyard::SwitchPosition > 
getDCLOSwitchSettings (unsigned short astroBandNo)
 
carma::util::CorrelatorFpgaModeType getFpgaMode (unsigned astroBandNo)
 
std::vector
< carma::switchyard::SwitchPosition > 
getIFSwitchSettings (unsigned short astroBandNo)
 Query switch settings. More...
 
std::vector
< carma::switchyard::SwitchPosition > 
getLLSwitchSettings (unsigned short astroBandNo)
 
std::vector
< carma::switchyard::SwitchPosition > 
getLOSwitchSettings (unsigned short astroBandNo)
 
unsigned int getNumActiveAstroBands (ControlCorrelatorDesignation type)
 
unsigned int getNumActiveCorrelatorBands (ControlCorrelatorDesignation type)
 
::std::vector
< carma::signalpath::SignalPathMapperControl::WalshColumnAssignment
getWalshColumnAssignment (unsigned short antNo)
 Query walsh function assignments. More...
 
void initializeCableMap (const ::std::string &fileName)
 Initialize a cable map, specifying switchyard hardware connections. More...
 
bool isValidAstroBand (unsigned astroBandNo, ControlCorrelatorDesignation type)
 
void loadConfiguration (const ::std::string &fileName, const ::std::string &confName, const ::std::string &astroBandConfName)
 Load a new configuration from a file. More...
 
::std::string queryConfiguration ()
 
void removeAntenna (unsigned short antNo, unsigned short subarrayNo)
 
void removeCorrelator (ControlCorrelatorDesignation type, unsigned short subarrayNo)
 
 SignalPathMapperHandle (carma::monitor::MonitorSystem &monitorSystem, carma::monitor::ControlSubsystemBase::Reachable &reachable)
 Constructor. More...
 
- Public Member Functions inherited from carma::control::RemoteObjHandleT< T >
template<typename S >
S::_var_type narrowedRemoteObj () const
 Returns remote object handle as var. More...
 
T::_var_type remoteObj () const
 Returns remote object handle as var. More...
 
 RemoteObjHandleT (const ::std::string &doName, monitor::MonitorPointBool *mpReachable, const monitor::MonitorSubsystem *subsystem, monitor::MonitorSystem *system, bool defaultLogIfNotReachable, bool defaultLogSentCommands)
 Constructor. More...
 
virtual ~RemoteObjHandleT ()
 Destructor. More...
 
- Public Member Functions inherited from carma::control::RemoteObjHandleBase
bool attemptToReconnectIfNeeded ()
 Try reconnect to the DO if needed. More...
 
::std::string doName () const
 get the DO name More...
 
void forceFullReconnect ()
 Force a full re-lookup of the DO by name. More...
 
bool isObjReachable ()
 If state is 'not reachable' and monitor system is current, tries to reconnect. More...
 
bool isObjReachable (bool logIfNotReachable)
 
 RemoteObjHandleBase (const ::std::string &doName, monitor::MonitorPointBool *mpReachable, const monitor::MonitorSubsystem *subsystem, monitor::MonitorSystem *system, bool defaultLogIfNotReachable, bool defaultLogSentCommands)
 Constructor. More...
 
virtual ~RemoteObjHandleBase ()
 Destructor. More...
 

Additional Inherited Members

- Protected Member Functions inherited from carma::control::RemoteObjHandleT< T >
virtual bool resolveObjRef ()
 
- Protected Member Functions inherited from carma::control::RemoteObjHandleBase
bool getDefaultLogIfNotReachable () const
 
bool getDefaultLogSentCommands () const
 
void invalidateObjRef ()
 
void invalidateObjRefIfNeededForCaught ()
 
void logException (const ::std::string &callString, const ::std::string &exString) const
 
void logSentCommand (const ::std::string &callString, const double mjd) const
 
void logSentCommand (const ::std::string &callString, const double mjd, const ::std::string &subDoName) const
 
void logSentCommandIfNeeded (const ::std::string &callString, const double mjd) const
 
void logSentCommandIfNeeded (const ::std::string &callString, const double mjd, const ::std::string &subDoName) const
 
void markObjRefValid ()
 
void processException (const ::std::string &callString, const ::CORBA::Exception &corbaException)
 
void throwBadRemoteObjAccess () const
 
void throwIfObjRefIsNotValid () const
 

Detailed Description

Manages control's reference to SignalPathMapper DO.

Definition at line 40 of file SignalPathMapperHandle.h.

Constructor & Destructor Documentation

carma::control::SignalPathMapperHandle::SignalPathMapperHandle ( carma::monitor::MonitorSystem monitorSystem,
carma::monitor::ControlSubsystemBase::Reachable &  reachable 
)

Constructor.

Parameters
carmaMonitorcarma::monitor::MonitorSystem& monitor system, which allows Alarm handle to get a reference to its own monitor stream.
constcarma::monitor::ControlSubsystemBase:Reachable& reachable monitor system, which allows Alarm handle to set monitor points for the subarray within control monitor subsystem .

Member Function Documentation

void carma::control::SignalPathMapperHandle::addAntenna ( unsigned short  antNo,
unsigned short  subarrayNo 
)

Methods to add/remove an antenna from a subarray.

void carma::control::SignalPathMapperHandle::assignWalshColumn ( carma::signalpath::SignalPathMapperControl::WalshColumnAssignment  wca)

Set a walsh column explicitly for an antenna.

Parameters
wcaThe Walsh column assignemnt to make. This is a struct of an antenna number and Walsh table column number.
Exceptions
UserExceptionif walsh column assignment conflicts with current signalpath configuration
void carma::control::SignalPathMapperHandle::clearAstroBandConfiguration ( unsigned short  bandNo,
unsigned short  subarrayNo,
ControlCorrelatorDesignation  type 
)

Clear an astro band configuration.

Parameters
bandNoThe Astroband number to configure
typeThe correlator type owned by the caller
Exceptions
UserExceptionif the caller is not allowed to clear this astro band
void carma::control::SignalPathMapperHandle::clearWalshColumnAssignment ( unsigned short  antNo)

Clear a walsh column assignment.

Parameters
antNoThe antenna number whose Walsh column we wish to clear
Exceptions
UserExceptiononly if an invalid antenna was specified
void carma::control::SignalPathMapperHandle::configureAstroBand ( unsigned short  bandNo,
const ::std::string &  confName,
unsigned short  subarrayNo,
ControlCorrelatorDesignation  type 
)

Configure an astro band.

Parameters
bandNoThe Astroband number to configure
confNameThe name of the configuration to assign to this astro band
typeThe correlator type owned by the caller
Exceptions
UserExceptionif the configuration conflicts with another configured astro band, if the configuration is not possible, or if the caller is not allowed to modify the specified astro band
carma::util::SeqShort* carma::control::SignalPathMapperHandle::getActiveAstroBandNoSeq ( ControlCorrelatorDesignation  type)
Returns
a Sequence of Astroband numbers associated with this correlator
Parameters
astroBandNoThe astroband number to query
::std::vector<carma::signalpath::SignalPathMapperControl::AstroBand> carma::control::SignalPathMapperHandle::getActiveAstroBands ( ControlCorrelatorDesignation  type)

Query active astro bands managed by this correlator.

Parameters
typeCorrelator type to query (CORR_SPECTRAL, CORR_WIDEBAND)
::std::vector<carma::signalpath::SignalPathMapperControl::CorrelatorBand> carma::control::SignalPathMapperHandle::getActiveCorrelatorBands ( ControlCorrelatorDesignation  type)

Query active correlator bands managed by this correlator.

Parameters
typeCorrelator type to query (CORR_SPECTRAL, CORR_WIDEBAND)
std::vector<carma::signalpath::SignalPathMapperControl::Antenna> carma::control::SignalPathMapperHandle::getAntennas ( unsigned short  astroBandNo)

Query antennas.

Parameters
astroBandNoAstro band number to query
int carma::control::SignalPathMapperHandle::getAstroBandForCorrelatorBand ( unsigned short  corrBandNo,
ControlCorrelatorDesignation  type 
)
Returns
the Astroband number to which the input correlator band is assigned, or -1 if unassigned.
Parameters
corrBandNoThe correlator band number to query
typeThe correlator type enum, e.g. CORR_SPECTRAL
::std::vector<carma::signalpath::SignalPathMapperControl::AstroBand> carma::control::SignalPathMapperHandle::getAstroBandsForConfiguration ( const ::std::string &  confName,
unsigned short  subarrayNo,
ControlCorrelatorDesignation  type 
)

Query astro bands for which a mapping is specified by the requested configuration.

Parameters
confNameThe name of the configuration to assign to this astro band
subarrayNoThe calling subarray number
typeCorrelator type to query (CORR_SPECTRAL, CORR_WIDEBAND)
std::vector<carma::signalpath::SignalPathMapperControl::BlockDownconverterSetting> carma::control::SignalPathMapperHandle::getBdcSettings ( unsigned short  astroBandNo)

Query block downconverter settings.

Parameters
astroBandNoAstro band number to query (0 == all)
::std::string carma::control::SignalPathMapperHandle::getConfname ( unsigned short  astroBandNo)
Returns
the configuration name of the input astroband
Parameters
astrobandNoThe Astroband number to query
::std::vector<carma::signalpath::SignalPathMapperControl::CorrelatorBandInput> carma::control::SignalPathMapperHandle::getCorrelatorBandInputMap ( const carma::signalpath::SignalPathMapperControl::CorrelatorBand band)

Query correlator band input mapping.

Parameters
bandCorrelator band to query
carma::util::SeqShort* carma::control::SignalPathMapperHandle::getCorrelatorBandNoSeq ( unsigned  astroBandNo)
Returns
a Sequence of correlatorband numbers associated with this astroband
Parameters
astroBandNoThe astroband number to query
::std::vector<carma::signalpath::SignalPathMapperControl::CorrelatorBand> carma::control::SignalPathMapperHandle::getCorrelatorBands ( unsigned  astroBandNo)

Query active correlator bands in this AstroBand.

Parameters
astroBandNoThe astroband number to query
ControlCorrelatorDesignation carma::control::SignalPathMapperHandle::getCorrTypeForAstroBand ( unsigned short  astroBandNo)

Query the correlator type for a given astroband.

Parameters
astroBandNoThe Astroband number to configure
Returns
The correlator type enum, e.g. CORR_SPECTRAL
std::vector<carma::switchyard::SwitchPosition> carma::control::SignalPathMapperHandle::getIFSwitchSettings ( unsigned short  astroBandNo)

Query switch settings.

Parameters
astroBandNoAstro band number to query (0 == all)
unsigned int carma::control::SignalPathMapperHandle::getNumActiveAstroBands ( ControlCorrelatorDesignation  type)
Returns
the number of active astrobands of a specific type
Parameters
typeCorrelator type to query (CORR_SPECTRAL, CORR_WIDEBAND)
unsigned int carma::control::SignalPathMapperHandle::getNumActiveCorrelatorBands ( ControlCorrelatorDesignation  type)
Returns
the number of active correlator bands of a specific type
Parameters
typeCorrelator type to query (CORR_SPECTRAL, CORR_WIDEBAND)

Definition at line 308 of file SignalPathMapperHandle.h.

::std::vector<carma::signalpath::SignalPathMapperControl::WalshColumnAssignment> carma::control::SignalPathMapperHandle::getWalshColumnAssignment ( unsigned short  antNo)

Query walsh function assignments.

Parameters
antNoAntenna to query, or 0 to query all
void carma::control::SignalPathMapperHandle::initializeCableMap ( const ::std::string &  fileName)

Initialize a cable map, specifying switchyard hardware connections.

Parameters
fileNameThe name of the file containing the cable map
Exceptions
UserExceptionif the file does not contain a valid mapping
bool carma::control::SignalPathMapperHandle::isValidAstroBand ( unsigned  astroBandNo,
ControlCorrelatorDesignation  type 
)
Returns
True if the input astroband number is a valid astroband for the input correlator type.
void carma::control::SignalPathMapperHandle::loadConfiguration ( const ::std::string &  fileName,
const ::std::string &  confName,
const ::std::string &  astroBandConfName 
)

Load a new configuration from a file.

Parameters
fileNameThe name of the file containing the configuration
confNameThe name to assign to the configuration
astroBandConfNameThe name of the astroband configuration to associate with this switchyard configuration
Exceptions
UserExceptionif the file does not contain a valid configuration
::std::string carma::control::SignalPathMapperHandle::queryConfiguration ( )
Returns
the configuration as a printable string

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