StelObject.hpp   StelObject.hpp 
skipping to change at line 17 skipping to change at line 17
* as published by the Free Software Foundation; either version 2 * as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version. * of the License, or (at your option) any later version.
* *
* This program is distributed in the hope that it will be useful, * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details. * GNU General Public License for more details.
* *
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, U SA. * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA.
*/ */
#ifndef _STELOBJECT_HPP_ #ifndef _STELOBJECT_HPP_
#define _STELOBJECT_HPP_ #define _STELOBJECT_HPP_
#include <QString> #include <QString>
#include "VecMath.hpp" #include "VecMath.hpp"
#include "StelObjectType.hpp" #include "StelObjectType.hpp"
#include "StelRegionObject.hpp" #include "StelRegionObject.hpp"
class StelNavigator;
class StelCore; class StelCore;
//! The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc... //! The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc...
//! Normally you should use StelObjectP instead of StelObject* which have b y default the same behaviour, //! Normally you should use StelObjectP instead of StelObject* which have b y default the same behaviour,
//! but which can be added reference counting if needed. //! but which can be added reference counting if needed.
//! @sa StelObjectP //! @sa StelObjectP
class StelObject : public StelRegionObject class StelObject : public StelRegionObject
{ {
public: public:
//! @enum InfoStringGroup used as named bitfield flags as specifiers to //! @enum InfoStringGroup used as named bitfield flags as specifiers to
skipping to change at line 68 skipping to change at line 67
}; };
//! A pre-defined set of specifiers for the getInfoString flags argu ment to getInfoString //! A pre-defined set of specifiers for the getInfoString flags argu ment to getInfoString
static const InfoStringGroup AllInfo = (InfoStringGroup)(Name|Catalo gNumber|Magnitude|RaDecJ2000|RaDecOfDate|AltAzi|Distance|Size|Extra1|Extra2 |Extra3|HourAngle|AbsoluteMagnitude); static const InfoStringGroup AllInfo = (InfoStringGroup)(Name|Catalo gNumber|Magnitude|RaDecJ2000|RaDecOfDate|AltAzi|Distance|Size|Extra1|Extra2 |Extra3|HourAngle|AbsoluteMagnitude);
//! A pre-defined set of specifiers for the getInfoString flags argu ment to getInfoString //! A pre-defined set of specifiers for the getInfoString flags argu ment to getInfoString
static const InfoStringGroup ShortInfo = (InfoStringGroup)(Name|Cata logNumber|Magnitude|RaDecJ2000); static const InfoStringGroup ShortInfo = (InfoStringGroup)(Name|Cata logNumber|Magnitude|RaDecJ2000);
virtual ~StelObject() {} virtual ~StelObject() {}
//! Default implementation of the getRegion method. //! Default implementation of the getRegion method.
//! Calling this method on some object will cause an error if they n eed a valid StelNavigator instance to compute their position.
//! Return the spatial region of the object. //! Return the spatial region of the object.
virtual SphericalRegionP getRegion() const {return SphericalRegionP( new SphericalPoint(getJ2000EquatorialPos(NULL)));} virtual SphericalRegionP getRegion() const {return SphericalRegionP( new SphericalPoint(getJ2000EquatorialPos(NULL)));}
//! Write I18n information about the object in QString. //! Write I18n information about the object in QString.
//! @param core the StelCore object to use //! @param core the StelCore object to use
//! @param flags a set of InfoStringGroup flags which are used to //! @param flags a set of InfoStringGroup flags which are used to
//! filter the return value - including specified types of informati on //! filter the return value - including specified types of informati on
//! and altering the output format. //! and altering the output format.
//! @return an HTML string containing information about the StelObje ct. //! @return an HTML string containing information about the StelObje ct.
virtual QString getInfoString(const StelCore *core, const InfoString Group& flags=StelObject::AllInfo) const = 0; virtual QString getInfoString(const StelCore *core, const InfoString Group& flags=StelObject::AllInfo) const = 0;
skipping to change at line 123 skipping to change at line 121
//! It is the apparent position, i.e. taking the refraction effect i nto account. //! It is the apparent position, i.e. taking the refraction effect i nto account.
//! The frame has it's Z axis at the zenith //! The frame has it's Z axis at the zenith
Vec3d getAltAzPosApparent(const StelCore* core) const; Vec3d getAltAzPosApparent(const StelCore* core) const;
//! Get observer-centered alt/az position //! Get observer-centered alt/az position
//! It is the automatic position, i.e. taking the refraction effect into account if atmosphere is on. //! It is the automatic position, i.e. taking the refraction effect into account if atmosphere is on.
//! The frame has it's Z axis at the zenith //! The frame has it's Z axis at the zenith
Vec3d getAltAzPosAuto(const StelCore* core) const; Vec3d getAltAzPosAuto(const StelCore* core) const;
//! Return object's apparent V magnitude as seen from observer //! Return object's apparent V magnitude as seen from observer
virtual float getVMagnitude(const StelCore*) const {return 99;} virtual float getVMagnitude(const StelCore* core, bool withExtinctio n=false) const;
//! Return a priority value which is used to discriminate objects by priority //! Return a priority value which is used to discriminate objects by priority
//! As for magnitudes, the lower is the higher priority //! As for magnitudes, the lower is the higher priority
virtual float getSelectPriority(const StelCore*) const {return 99;} virtual float getSelectPriority(const StelCore*) const {return 99;}
//! Get a color used to display info about the object //! Get a color used to display info about the object
virtual Vec3f getInfoColor() const {return Vec3f(1,1,1);} virtual Vec3f getInfoColor() const {return Vec3f(1,1,1);}
//! Return the best FOV in degree to use for a close view of the obj ect //! Return the best FOV in degree to use for a close view of the obj ect
virtual double getCloseViewFov(const StelCore*) const {return 10.;} virtual double getCloseViewFov(const StelCore*) const {return 10.;}
 End of changes. 4 change blocks. 
4 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/