My Project
 All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
gcp::antenna::control::Pointing Class Reference

#include <Pointing.h>

Public Types

enum  PositionType { MOUNT_ANGLES, MOUNT_RATES, TOPOCENTRIC, GEOCENTRIC }
 

Public Member Functions

 Pointing ()
 
void reset ()
 
void setupForHalt (SpecificShare *share)
 
void setupForReboot (SpecificShare *share)
 
void setupForSlew (SpecificShare *share, TrackerMsg *msg)
 
void setupForTrack ()
 
void setTime (double utc)
 
void setTime (int mjd, int sec)
 
void setSrcName (char *name)
 
unsigned char * getSrcName ()
 
void setScanName (char *name)
 
unsigned char * getScanName ()
 
void setAxes (gcp::util::Axis::Type axes)
 
void setRa (double ra)
 
void setDec (double dec)
 
void setDist (double dist)
 
void setRefraction (double refraction)
 
gcp::util::Axis::Type getAxes ()
 
bool includesAxis (gcp::util::Axis::Type axis)
 
double getUtc ()
 
gcp::util::RegDate getDate ()
 
double getRefraction ()
 
void convertMountToEncoder (Encoder *encoder, PmacAxis *axis, int current)
 
void convertMountToEncoder (Encoder *encoder, PmacAxis *axis, double current)
 
gcp::antenna::control::PositionPosition (PositionType type)
 
void setAngles (double az, double el, double pa)
 
void setRates (double az, double el, double pa)
 
void computeGeocentricPosition (double lst, PointingCorrections *f)
 
void packUtc (unsigned *u_elements)
 
void packSourceName (unsigned *u_elements, int nel)
 
void packScanName (unsigned *u_elements, int nel)
 
void packEquatGeoc (signed *s_elements)
 
void packHorizGeoc (signed *s_elements)
 
void packHorizTopo (signed *s_elements)
 
void packHorizMount (signed *s_elements)
 
void packHorizMount (double *array)
 
bool isCenter ()
 
void resetAngles ()
 

Friends

class Tracker
 

Detailed Description

A class used by Tracker to handle pointing.

Member Enumeration Documentation

An enumerator for the Position members below

Constructor & Destructor Documentation

Pointing::Pointing ( )

Constructor

....................................................................... Constructor just calls reset()

Member Function Documentation

void Pointing::computeGeocentricPosition ( double  lst,
PointingCorrections f 
)

Compute the current geocentric position.

void Pointing::convertMountToEncoder ( Encoder encoder,
PmacAxis axis,
int  current 
)

Convert a mount angle to encoder counts

A public method to convert from mount angle to encoder counts

void Pointing::convertMountToEncoder ( Encoder encoder,
PmacAxis axis,
double  current 
)

A public method to apply the mount angle limits

Axis::Type Pointing::getAxes ( )

Get the mask of axes to be driven.

....................................................................... Return the set of axes to drive.

RegDate Pointing::getDate ( )

....................................................................... Return the current UTC.

double Pointing::getRefraction ( )

Return the refraction correction.

....................................................................... Return the applied refraction correction.

unsigned char * Pointing::getScanName ( )

....................................................................... Return the name of the scan

unsigned char * Pointing::getSrcName ( )

....................................................................... Return the name of the source

double Pointing::getUtc ( )

Return the current UTC

....................................................................... Return the current UTC.

bool Pointing::includesAxis ( gcp::util::Axis::Type  axis)

Return true if the passed axis is included in the set of axes to control.

....................................................................... Return true if the axis mask includes the requested axis

bool gcp::antenna::control::Pointing::isCenter ( )
inline

Return true if the current source is a center source

void Pointing::packEquatGeoc ( signed *  s_elements)

Pack geocentric equatorial coordinates.

....................................................................... Pack the equatorial geocentric position.

void Pointing::packHorizGeoc ( signed *  s_elements)

Pack geocentric horizon coordinates.

....................................................................... Pack geocentric horizon coordinates.

void Pointing::packHorizMount ( signed *  s_elements)

Pack mount horizon coordinates.

....................................................................... Pack horizon mount coordinates.

void Pointing::packHorizMount ( double *  array)

....................................................................... Pack horizon mount coordinates.

void Pointing::packHorizTopo ( signed *  s_elements)

Pack topocentric horizon coordinates.

....................................................................... Pack topocentric horizon coordinates.

void Pointing::packScanName ( unsigned *  u_elements,
int  nel 
)

Pack the scan name for archival in the register database.

....................................................................... Pack the scan name for archival in the register database.

void Pointing::packSourceName ( unsigned *  u_elements,
int  nel 
)

Pack the source name for archival in the register database.

Exceptions
Exception....................................................................... Pack the source name for archival in the register database.
void Pointing::packUtc ( unsigned *  u_elements)

Pack the UTC for archival into the register database.

....................................................................... Pack the UTC for archival into the register database

gcp::antenna::control::Position * Pointing::Position ( PositionType  type)

Return a pointer to the requested pointing angle container

Exceptions
Exception....................................................................... Return a pointer to the requested Position object
void Pointing::reset ( )

Reset method

....................................................................... Initialize data members to something sensible

void Pointing::resetAngles ( )

....................................................................... Install the angles to which the axes will be driven.

void Pointing::setAngles ( double  az,
double  el,
double  pa 
)

Install the angles to which the axes will be driven.

....................................................................... Install the angles to which the axes will be driven.

void Pointing::setAxes ( gcp::util::Axis::Type  axes)

Install the set of axes to drive.

....................................................................... Install the set of axes to drive.

void Pointing::setDec ( double  dec)

Set the Dec of the source.

....................................................................... Set the DEC of the source.

void Pointing::setDist ( double  dist)

Set the source distance.

....................................................................... Set the distance to the source.

void Pointing::setRa ( double  ra)

Set the RA of the source.

....................................................................... Set the RA of the source.

void Pointing::setRates ( double  az,
double  el,
double  pa 
)

Install the rates with which the axes will be driven.

....................................................................... Install the rates with which the axes will be driven.

void Pointing::setRefraction ( double  refraction)

Install the refraction correction.

....................................................................... Set the refraction correction.

void Pointing::setScanName ( char *  name)

Set the current scan name

....................................................................... Install the name of the scan

void Pointing::setSrcName ( char *  name)

Set the current source name.

....................................................................... Install the name of the source

void Pointing::setTime ( double  utc)

Set the current time.

....................................................................... Record the current time as days and seconds of UTC

void Pointing::setTime ( int  mjd,
int  sec 
)

Set the current time.

....................................................................... Record the current time as days and seconds of UTC

void Pointing::setupForHalt ( SpecificShare share)

Prepare for a halt of the antenna

....................................................................... Set up pointing for a new halt command

void Pointing::setupForReboot ( SpecificShare share)

Prepare for a reboot (of the drive).

....................................................................... Set up pointing in preparation for a pmac reboot

void Pointing::setupForSlew ( SpecificShare share,
TrackerMsg msg 
)

Prepare for a slew.

....................................................................... Set up pointing for a new slew command

void Pointing::setupForTrack ( )

Prepare for a track

....................................................................... Set up pointing for a new track


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