Instrument Neutral Distributed Interface INDI
2.0.2
|
This class encapsulates all the alignment subsystem classes that are useful to client implementations. Clients should inherit from this class. More...
#include <AlignmentSubsystemForClients.h>
Public Member Functions | |
virtual | ~AlignmentSubsystemForClients () |
Virtual destructor. More... | |
void | Initialise (const char *DeviceName, INDI::BaseClient *BaseClient) |
This routine should be called before any connections to devices are made. More... | |
void | ProcessNewBLOB (IBLOB *BLOBPointer) |
Process new BLOB message from driver. This routine should be called from within the newBLOB handler in the client. More... | |
void | ProcessNewDevice (INDI::BaseDevice *DevicePointer) |
Process new device message from driver. This routine should be called from within the newDevice handler in the client. More... | |
void | ProcessNewProperty (INDI::Property *PropertyPointer) |
Process new property message from driver. This routine should be called from within the newProperty handler in the client. More... | |
void | ProcessNewNumber (INumberVectorProperty *NumberVectorPropertyPointer) |
Process new number message from driver. This routine should be called from within the newNumber handler in the client. More... | |
void | ProcessNewSwitch (ISwitchVectorProperty *SwitchVectorPropertyPointer) |
Process new switch message from driver. This routine should be called from within the newSwitch handler in the client. More... | |
Public Member Functions inherited from INDI::AlignmentSubsystem::ClientAPIForMathPluginManagement | |
virtual | ~ClientAPIForMathPluginManagement () |
Virtual destructor. More... | |
bool | EnumerateMathPlugins (MathPluginsList &AvailableMathPlugins) |
Return a list of the names of the available math plugins. More... | |
void | Initialise (INDI::BaseClient *BaseClient) |
Intialise the API. More... | |
void | ProcessNewDevice (INDI::BaseDevice *DevicePointer) |
Process new device message from driver. This routine should be called from within the newDevice handler in the client. This routine is not normally called directly but is called by the ProcessNewDevice function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewProperty (INDI::Property *PropertyPointer) |
Process new property message from driver. This routine should be called from within the newProperty handler in the client. This routine is not normally called directly but is called by the ProcessNewProperty function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewSwitch (ISwitchVectorProperty *SwitchVectorProperty) |
Process new switch message from driver. This routine should be called from within the newSwitch handler in the client. This routine is not normally called directly but is called by the ProcessNewSwitch function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
bool | SelectMathPlugin (const std::string &MathPluginName) |
Selects, loads and initialises the named math plugin. More... | |
bool | ReInitialiseMathPlugin () |
Re-initialises the current math plugin. More... | |
Public Member Functions inherited from INDI::AlignmentSubsystem::ClientAPIForAlignmentDatabase | |
ClientAPIForAlignmentDatabase () | |
Default constructor. More... | |
virtual | ~ClientAPIForAlignmentDatabase () |
Virtual destructor. More... | |
bool | AppendSyncPoint (const AlignmentDatabaseEntry &CurrentValues) |
Append a sync point to the database. More... | |
bool | ClearSyncPoints () |
Delete all sync points from the database. More... | |
bool | DeleteSyncPoint (unsigned int Offset) |
Delete a sync point from the database. More... | |
bool | EditSyncPoint (unsigned int Offset, const AlignmentDatabaseEntry &CurrentValues) |
Edit a sync point in the database. More... | |
int | GetDatabaseSize () |
Return the number of entries in the database. More... | |
void | Initialise (INDI::BaseClient *BaseClient) |
Initialise the API. More... | |
bool | InsertSyncPoint (unsigned int Offset, const AlignmentDatabaseEntry &CurrentValues) |
Insert a sync point in the database. More... | |
bool | LoadDatabase () |
Load the database from persistent storage. More... | |
void | ProcessNewBLOB (IBLOB *BLOBPointer) |
Process new BLOB message from driver. This routine should be called from within the newBLOB handler in the client. This routine is not normally called directly but is called by the ProcessNewBLOB function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewDevice (INDI::BaseDevice *DevicePointer) |
Process new device message from driver. This routine should be called from within the newDevice handler in the client. This routine is not normally called directly but is called by the ProcessNewDevice function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewNumber (INumberVectorProperty *NumberVectorProperty) |
Process new number message from driver. This routine should be called from within the newNumber handler in the client. This routine is not normally called directly but it is called by the ProcessNewNumber function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewProperty (INDI::Property *PropertyPointer) |
Process new property message from driver. This routine should be called from within the newProperty handler in the client. This routine is not normally called directly but it is called by the ProcessNewProperty function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
void | ProcessNewSwitch (ISwitchVectorProperty *SwitchVectorProperty) |
Process new switch message from driver. This routine should be called from within the newSwitch handler in the client. This routine is not normally called directly but it is called by the ProcessNewSwitch function in INDI::Alignment::AlignmentSubsystemForClients which filters out calls from unwanted devices. TODO maybe hide this function. More... | |
bool | ReadIncrementSyncPoint (AlignmentDatabaseEntry &CurrentValues) |
Increment the current offset then read a sync point from the database. More... | |
bool | ReadSyncPoint (unsigned int Offset, AlignmentDatabaseEntry &CurrentValues) |
Read a sync point from the database. More... | |
bool | SaveDatabase () |
Save the database to persistent storage. More... | |
Public Member Functions inherited from INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions | |
virtual | ~TelescopeDirectionVectorSupportFunctions () |
Virtual destructor. More... | |
void | AltitudeAzimuthFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IHorizontalCoordinates &HorizontalCoordinates) |
Calculates an altitude and azimuth from the supplied normalised direction vector and declination. More... | |
void | EquatorialCoordinatesFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IEquatorialCoordinates &EquatorialCoordinates) |
Calculates equatorial coordinates from the supplied telescope direction vector and declination. More... | |
void | LocalHourAngleDeclinationFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, INDI::IEquatorialCoordinates &EquatorialCoordinates) |
Calculates a local hour angle and declination from the supplied telescope direction vector and declination. More... | |
void | SphericalCoordinateFromTelescopeDirectionVector (const TelescopeDirectionVector TelescopeDirectionVector, double &AzimuthAngle, AzimuthAngleDirection_t AzimuthAngleDirection, double &PolarAngle, PolarAngleDirection_t PolarAngleDirection) |
Calculates a spherical coordinate from the supplied telescope direction vector. More... | |
const TelescopeDirectionVector | TelescopeDirectionVectorFromAltitudeAzimuth (INDI::IHorizontalCoordinates HorizontalCoordinates) |
Calculates a normalised direction vector from the supplied altitude and azimuth. More... | |
const TelescopeDirectionVector | TelescopeDirectionVectorFromEquatorialCoordinates (INDI::IEquatorialCoordinates EquatorialCoordinates) |
Calculates a telescope direction vector from the supplied equatorial coordinates. More... | |
const TelescopeDirectionVector | TelescopeDirectionVectorFromLocalHourAngleDeclination (INDI::IEquatorialCoordinates EquatorialCoordinates) |
Calculates a telescope direction vector from the supplied local hour angle and declination. More... | |
const TelescopeDirectionVector | TelescopeDirectionVectorFromSphericalCoordinate (const double AzimuthAngle, AzimuthAngleDirection_t AzimuthAngleDirection, const double PolarAngle, PolarAngleDirection_t PolarAngleDirection) |
Calculates a telescope direction vector from the supplied spherical coordinate information. More... | |
Additional Inherited Members | |
Public Types inherited from INDI::AlignmentSubsystem::ClientAPIForMathPluginManagement | |
typedef std::vector< std::string > | MathPluginsList |
Public Types inherited from INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions | |
enum | AzimuthAngleDirection { CLOCKWISE , ANTI_CLOCKWISE } |
enum | PolarAngleDirection { FROM_POLAR_AXIS , FROM_AZIMUTHAL_PLANE } |
typedef enum INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::AzimuthAngleDirection | AzimuthAngleDirection_t |
typedef enum INDI::AlignmentSubsystem::TelescopeDirectionVectorSupportFunctions::PolarAngleDirection | PolarAngleDirection_t |
This class encapsulates all the alignment subsystem classes that are useful to client implementations. Clients should inherit from this class.
Definition at line 29 of file AlignmentSubsystemForClients.h.
|
inlinevirtual |
Virtual destructor.
Definition at line 35 of file AlignmentSubsystemForClients.h.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::Initialise | ( | const char * | DeviceName, |
INDI::BaseClient * | BaseClient | ||
) |
This routine should be called before any connections to devices are made.
[in] | DeviceName | The device name of INDI driver instance to be used. |
[in] | BaseClient | A pointer to the child INDI::BaseClient class |
Definition at line 15 of file AlignmentSubsystemForClients.cpp.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::ProcessNewBLOB | ( | IBLOB * | BLOBPointer | ) |
Process new BLOB message from driver. This routine should be called from within the newBLOB handler in the client.
[in] | BLOBPointer | A pointer to the INDI::IBLOB. |
Definition at line 22 of file AlignmentSubsystemForClients.cpp.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::ProcessNewDevice | ( | INDI::BaseDevice * | DevicePointer | ) |
Process new device message from driver. This routine should be called from within the newDevice handler in the client.
[in] | DevicePointer | A pointer to the INDI::BaseDevice object. |
Definition at line 31 of file AlignmentSubsystemForClients.cpp.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::ProcessNewNumber | ( | INumberVectorProperty * | NumberVectorPropertyPointer | ) |
Process new number message from driver. This routine should be called from within the newNumber handler in the client.
[in] | NumberVectorPropertyPointer | A pointer to the INDI::INumberVectorProperty. |
Definition at line 41 of file AlignmentSubsystemForClients.cpp.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::ProcessNewProperty | ( | INDI::Property * | PropertyPointer | ) |
Process new property message from driver. This routine should be called from within the newProperty handler in the client.
[in] | PropertyPointer | A pointer to the INDI::Property object. |
Definition at line 50 of file AlignmentSubsystemForClients.cpp.
void INDI::AlignmentSubsystem::AlignmentSubsystemForClients::ProcessNewSwitch | ( | ISwitchVectorProperty * | SwitchVectorPropertyPointer | ) |
Process new switch message from driver. This routine should be called from within the newSwitch handler in the client.
[in] | SwitchVectorPropertyPointer | A pointer to the INDI::ISwitchVectorProperty. |
Definition at line 60 of file AlignmentSubsystemForClients.cpp.