Stellarium  HEAD
Public Member Functions
TelescopeTCP Class Reference

This TelescopeClient class can control a telescope by communicating to a server process ("telescope server") via the "Stellarium telescope control protocol" over TCP/IP. More...

#include <TelescopeClient.hpp>

Public Member Functions

 TelescopeTCP (const QString &name, const QString &params, TelescopeControl::Equinox eq=TelescopeControl::EquinoxJ2000)
 
bool isConnected (void) const override
 
- Public Member Functions inherited from TelescopeClient
QString getEnglishName (void) const override
 Return object's name in english.
 
QString getNameI18n (void) const override
 Return translated object's name.
 
QString getInfoString (const StelCore *core, const InfoStringGroup &flags) const override
 TelescopeClient supports the following InfoStringGroup flags: More...
 
QString getType (void) const override
 Return object's type. It should be the name of the class.
 
QString getObjectType (void) const override
 Return object's type. More...
 
QString getObjectTypeI18n (void) const override
 Return object's type. It should be translated lowercase name of the type of the object.
 
QString getID () const override
 Returns a unique identifier for this object. More...
 
virtual void telescopeSync (const Vec3d &j2000Pos, StelObjectP selectObject)
 Some telescopes can synchronize the telescope with the given position or object. More...
 
virtual bool isTelescopeSyncSupported () const
 report whether this client can respond to sync commands. More...
 
virtual void telescopeAbortSlew ()
 Send command to abort slew. More...
 
virtual bool isAbortSlewSupported () const
 report whether this client can abort a running slew. More...
 
virtual void move (double angle, double speed)
 move More...
 
void addOcular (double fov)
 Store field of view for an ocular circle (unrelated to Oculars plugin)
 
const QList< double > & getOculars (void) const
 Retrieve list of fields of view for this telescope.
 
virtual QWidget * createControlWidget (QSharedPointer< TelescopeClient > telescope, QWidget *parent=nullptr) const
 Some telescope types may override this method to display additional user interface elements.
 
- Public Member Functions inherited from StelObject
SphericalRegionP getRegion () const override
 Default implementation of the getRegion method. More...
 
Vec3d getPointInRegion () const override
 Default implementation of the getPointInRegion method. More...
 
virtual QVariantMap getInfoMap (const StelCore *core) const
 Return a key/value map with data about an object's position, magnitude and so on. More...
 
Vec3d getEquinoxEquatorialPos (const StelCore *core) const
 Get observer-centered equatorial coordinate at the current equinox The frame has its Z axis at the planet's current rotation axis At time 2000-01-01 this frame is almost the same as J2000, but ONLY if the observer is on earth.
 
Vec3d getEquinoxEquatorialPosApparent (const StelCore *core) const
 Like getEquinoxEquatorialPos(core), but always adds refraction correction to the position.
 
Vec3d getEquinoxEquatorialPosAuto (const StelCore *core) const
 Like getEquinoxEquatorialPos(core), but adds refraction correction to the position if atmosphere is active.
 
Vec3d getGalacticPos (const StelCore *core) const
 Get observer-centered galactic coordinates.
 
Vec3d getSupergalacticPos (const StelCore *core) const
 Get observer-centered supergalactic coordinates.
 
Vec3d getSiderealPosGeometric (const StelCore *core) const
 Get observer-centered hour angle + declination (at current equinox) It is the geometric position, i.e. More...
 
Vec3d getSiderealPosApparent (const StelCore *core) const
 Get observer-centered hour angle + declination (at current equinox) It is the apparent position, i.e. More...
 
Vec3d getAltAzPosGeometric (const StelCore *core) const
 Get observer-centered alt/az position It is the geometric position, i.e. More...
 
Vec3d getAltAzPosApparent (const StelCore *core) const
 Get observer-centered alt/az position It is the apparent position, i.e. More...
 
Vec3d getAltAzPosAuto (const StelCore *core) const
 Get observer-centered alt/az position It is the automatic position, i.e. More...
 
float getParallacticAngle (const StelCore *core) const
 Get parallactic angle, which is the deviation between zenith angle and north angle. [radians].
 
bool isAboveHorizon (const StelCore *core) const
 Checking position an object above mathematical horizon for current location. More...
 
bool isAboveRealHorizon (const StelCore *core) const
 Checking position an object above real horizon for current location. More...
 
virtual Vec4d getRTSTime (const StelCore *core, const double altitude=0.) const
 Compute time of rise, transit and set for celestial object for current location. More...
 
virtual float getVMagnitude (const StelCore *core) const
 Return object's apparent V magnitude as seen from observer, without including extinction.
 
float getVMagnitudeWithExtinction (const StelCore *core, const float knownVMag=-1000.f) const
 Return object's apparent V magnitude as seen from observer including extinction. More...
 
virtual Vec3f getInfoColor () const
 Get a color used to display info about the object.
 
virtual double getCloseViewFov (const StelCore *) const
 Return the best FOV in degree to use for a close view of the object.
 
virtual double getSatellitesFov (const StelCore *) const
 Return the best FOV in degree to use for a global view of the object satellite system (if there are satellites)
 
virtual double getParentSatellitesFov (const StelCore *) const
 
virtual double getAngularRadius (const StelCore *core) const
 Return the angular radius of a circle containing the object as seen from the observer with the circle center assumed to be at getJ2000EquatorialPos(). More...
 
virtual float getAirmass (const StelCore *core) const
 Return airmass value for the object (for atmosphere-dependent calculations) More...
 

Additional Inherited Members

- Public Types inherited from StelObject
enum  InfoStringGroupFlags {
  None = 0x00000000 , Name = 0x00000001 , CatalogNumber = 0x00000002 , Magnitude = 0x00000004 ,
  RaDecJ2000 = 0x00000008 , RaDecOfDate = 0x00000010 , AltAzi = 0x00000020 , Distance = 0x00000040 ,
  Elongation = 0x00000080 , Size = 0x00000100 , Velocity = 0x00000200 , ProperMotion = 0x00000400 ,
  Extra = 0x00000800 , HourAngle = 0x00001000 , AbsoluteMagnitude = 0x00002000 , GalacticCoord = 0x00004000 ,
  SupergalacticCoord = 0x00008000 , OtherCoord = 0x00010000 , ObjectType = 0x00020000 , EclipticCoordJ2000 = 0x00040000 ,
  EclipticCoordOfDate = 0x00080000 , IAUConstellation = 0x00100000 , SiderealTime = 0x00200000 , RTSTime = 0x00400000 ,
  SolarLunarPosition = 0x00800000 , Script = 0x01000000 , DebugAid = 0x02000000 , NoFont = 0x04000000 ,
  PlainText = 0x08000000
}
 Used as named bitfield flags as specifiers to filter results of getInfoString. More...
 
- Public Slots inherited from StelObject
virtual void setExtraInfoString (const InfoStringGroup &flags, const QString &str)
 Allow additions to the Info String. More...
 
virtual void addToExtraInfoString (const StelObject::InfoStringGroup &flags, const QString &str)
 Add str to the extra string. More...
 
QStringList getExtraInfoStrings (const InfoStringGroup &flags) const
 Retrieve an (unsorted) QStringList of all extra info strings that match flags. More...
 
void removeExtraInfoStrings (const InfoStringGroup &flags)
 Remove the extraInfoStrings with the given flags. More...
 
- Static Public Member Functions inherited from TelescopeClient
static TelescopeClientcreate (const QString &url)
 example url: My_first_telescope:TCP:J2000:localhost:10000:500000 split to: name = My_first_telescope type = TCP equinox = J2000 params = localhost:10000:500000 More...
 
- Static Public Attributes inherited from TelescopeClient
static const QString TELESCOPECLIENT_TYPE
 
- Static Public Attributes inherited from StelObject
static constexpr InfoStringGroup AllInfo
 A pre-defined "all available" set of specifiers for the getInfoString flags argument to getInfoString. More...
 
static constexpr InfoStringGroup DefaultInfo
 A pre-defined "default" set of specifiers for the getInfoString flags argument to getInfoString It appears useful to propose this set as post-install settings and let users configure more on demand. More...
 
static constexpr InfoStringGroup ShortInfo = static_cast<InfoStringGroup>(Name|CatalogNumber|Magnitude|RaDecJ2000)
 A pre-defined "shortest useful" set of specifiers for the getInfoString flags argument to getInfoString.
 
- Protected Member Functions inherited from TelescopeClient
 TelescopeClient (const QString &name)
 
virtual QString getTelescopeInfoString (const StelCore *core, const InfoStringGroup &flags) const
 
- Protected Member Functions inherited from StelObject
QString getCommonInfoString (const StelCore *core, const InfoStringGroup &flags) const
 Format the positional info string containing J2000/of date/altaz/hour angle positions and constellation, sidereal time, etc. More...
 
virtual QString getMagnitudeInfoString (const StelCore *core, const InfoStringGroup &flags, const int decimals=1) const
 Format the magnitude info string for the object. More...
 
QString getSolarLunarInfoString (const StelCore *core, const InfoStringGroup &flags) const
 Add a section to the InfoString with just horizontal data for the Sun and Moon, when observed from Earth. More...
 
void postProcessInfoString (QString &str, const InfoStringGroup &flags) const
 Apply post processing on the info string. More...
 
- Static Protected Member Functions inherited from TelescopeClient
static qint64 getNow (void)
 returns the current system time in microseconds since the Epoch
 
- Protected Attributes inherited from TelescopeClient
QString nameI18n
 
const QString name
 

Detailed Description

This TelescopeClient class can control a telescope by communicating to a server process ("telescope server") via the "Stellarium telescope control protocol" over TCP/IP.

The "Stellarium telescope control protocol" is specified in a separate document along with the telescope server software.