Index: trunk/SophyaExt/XAstroPack/tstxastro.cc
===================================================================
--- trunk/SophyaExt/XAstroPack/tstxastro.cc	(revision 2552)
+++ trunk/SophyaExt/XAstroPack/tstxastro.cc	(revision 2601)
@@ -24,7 +24,7 @@
   sscanf(arg[2],"%lf,%c",&val0,&unite);
 
-  val = val0; InRange(&val,range);
+  val = val0; InRange(val,range);
   printf("InRange(%.9f, %.2f) = %.9f\n",val0,range,val);
-  val = val0; InRange(&val,range,vmax);
+  val = val0; InRange(val,range,vmax);
   printf("InRange(%.9f, %.2f, %.2f) = %.9f\n",val0,range,vmax,val);
 
@@ -33,7 +33,7 @@
     else if(unite=='d') un = TypUniteD;
       else un = TypUniteR;
-  val = val0; InRangeCoLat(&val,un);
+  val = val0; InRangeCoLat(val,un);
   printf("InRangeCoLat(%.9f %c) = %.9f\n",val0,unite,val);
-  val = val0; InRangeLat(&val,un);
+  val = val0; InRangeLat(val,un);
   printf("InRangeLat(%.9f %c) = %.9f\n",val0,unite,val);
   
@@ -106,5 +106,5 @@
 
   double coord1 = coord1_ini, coord2 = coord2_ini;
-  unsigned long newtyp = CoordConvertToStd(typ,&coord1,&coord2);
+  unsigned long newtyp = CoordConvertToStd(typ,coord1,coord2);
   string newstr = DecodeTypAstro(newtyp);
 
Index: trunk/SophyaExt/XAstroPack/xastropack.h
===================================================================
--- trunk/SophyaExt/XAstroPack/xastropack.h	(revision 2552)
+++ trunk/SophyaExt/XAstroPack/xastropack.h	(revision 2601)
@@ -81,12 +81,25 @@
 // ------------------- Utilitaires -------------------
 unsigned long CoordConvertToStd(unsigned long typ,double* coord1,double* coord2);
+inline unsigned long CoordConvertToStd(unsigned long typ,double &coord1,double &coord2)
+       {return CoordConvertToStd(typ,&coord1,&coord2);}
+
 unsigned long GetCoordUnit(int coordnum,unsigned long typ);
+
 unsigned long DecodeTypAstro(const char *ctype);
 inline unsigned long DecodeTypAstro(const string stype)
-                {return DecodeTypAstro(stype.c_str());}
+       {return DecodeTypAstro(stype.c_str());}
 string        DecodeTypAstro(unsigned long typ);
+
 void ToCoLat(double* val,unsigned long typ);
+inline void ToCoLat(double &val,unsigned long typ)
+       {ToCoLat(&val,typ);}
+
 void InRangeLat(double* val,unsigned long typ);
+inline void InRangeLat(double &val,unsigned long typ)
+       {InRangeLat(&val,typ);}
+
 void InRangeCoLat(double* val,unsigned long typ);
+inline void InRangeCoLat(double &val,unsigned long typ)
+       {InRangeCoLat(&val,typ);}
 
 /*!
@@ -105,6 +118,11 @@
 inline void InRange(double *val,double range)
              {*val-=range*floor(*val/range);}
+inline void InRange(double &val,double range)
+             {val-=range*floor(val/range);}
+
 inline void InRange(double *val,double range,double vmax)
          {InRange(val,range); if(*val>vmax) *val-=range;}
+inline void InRange(double &val,double range,double vmax)
+         {InRange(val,range); if(val>vmax) val-=range;}
 
 // ------------------- Gestions des temps -------------------
@@ -120,10 +138,23 @@
 
 double MJDfrDate(double dy,int mn,int yr);
+
 void DatefrMJD(double mjd,double *dy,int *mn,int *yr);
+inline void DatefrMJD(double mjd,double &dy,int &mn,int &yr)
+       {DatefrMJD(mjd,&dy,&mn,&yr);}
+
 double YearfrMJD(double mjd);
+
 double MJDfrYear(double yr);
+
 void YDfrMJD(double mjd,double *dy,int *yr);
+inline void YDfrMJD(double mjd,double &dy,int &yr)
+       {YDfrMJD(mjd,&dy,&yr);}
+
 int IsLeapYear(int y);
+
 int DayOrder(double mjd,int *dow);
+inline int DayOrder(double mjd,int &dow)
+       {return DayOrder(mjd,&dow);}
+
 int DaysInMonth(double mjd);
 double MJDat0hFrMJD(double mjd);
@@ -142,5 +173,9 @@
 double GST0(double mjd0);
 double LSTfrMJD(double mjd,double geolng);
+
 void HMSfrHdec(double hd,int *h,int *mn,double *s);
+inline void HMSfrHdec(double hd,int &h,int &mn,double &s)
+       {HMSfrHdec(hd,&h,&mn,&s);}
+
 double HdecfrHMS(int h,int mn,double s);
 string ToStringHMS(int h,int mn,double s);
@@ -149,8 +184,16 @@
 // ------------------- Calculs Divers -------------------
 void Precess(double mjd1,double mjd2,double ra1,double dec1,double *ra2,double *dec2);
+inline void Precess(double mjd1,double mjd2,double ra1,double dec1,double &ra2,double &dec2)
+       {Precess(mjd1,mjd2,ra1,dec1,&ra2,&dec2);}
+
 inline void PrecessInPlace(double mjd1,double mjd2,double* ra,double* dec) {
   double ra1=*ra, dec1=*dec;
   Precess(mjd1,mjd2,ra1,dec1,ra,dec);
 }
+inline void PrecessInPlace(double mjd1,double mjd2,double &ra,double &dec) {
+  double ra1=ra, dec1=dec;
+  Precess(mjd1,mjd2,ra1,dec1,ra,dec);
+}
+
 double AirmassfrAlt(double alt);
 double HelioCorr(double jd,double ra,double dec);
@@ -177,18 +220,53 @@
 
 void EqtoGal(double mjd,double ra,double dec,double *glng,double *glat);
+inline void EqtoGal(double mjd,double ra,double dec,double &glng,double &glat)
+       {EqtoGal(mjd,ra,dec,&glng,&glat);}
+
+
 void GaltoEq(double mjd,double glng,double glat,double *ra,double *dec);
+inline void GaltoEq(double mjd,double glng,double glat,double &ra,double &dec)
+       {GaltoEq( mjd, glng, glat, &ra, &dec);}
+
 void EqHtoHor(double geolat,double ha,double dec,double *az,double *alt);
+inline void EqHtoHor(double geolat,double ha,double dec,double &az,double &alt)
+       {EqHtoHor( geolat, ha, dec, &az, &alt);}
+
 void HortoEqH(double geolat,double az,double alt,double *ha,double *dec);
+inline void HortoEqH(double geolat,double az,double alt,double &ha,double &dec)
+       {HortoEqH( geolat, az, alt, &ha, &dec);}
+
 void EqtoHor(double geolat,double lst,double ra,double dec,double *az,double *alt);
+inline void EqtoHor(double geolat,double lst,double ra,double dec,double &az,double &alt)
+       {EqtoHor( geolat, lst, ra, dec, &az, &alt);}
+
 void HortoEq(double geolat,double lst,double az,double alt,double *ra,double *dec);
+inline void HortoEq(double geolat,double lst,double az,double alt,double &ra,double &dec)
+       {HortoEq( geolat, lst, az, alt, &ra, &dec);}
+
 void EqtoEcl(double mjd,double ra,double dec,double *eclng,double *eclat);
+inline void EqtoEcl(double mjd,double ra,double dec,double &eclng,double &eclat)
+       {EqtoEcl( mjd, ra, dec, &eclng, &eclat);}
+
 void EcltoEq(double mjd,double eclng,double eclat,double *ra,double *dec);
+inline void EcltoEq(double mjd,double eclng,double eclat,double &ra,double &dec)
+       {EcltoEq( mjd, eclng, eclat, &ra, &dec);}
 
 // ------------------- Positions des astres -------------------
 void SunPos(double mjd,double *eclsn,double *ecbsn,double *rsn);
+inline void SunPos(double mjd,double &eclsn,double &ecbsn,double &rsn)
+       {SunPos( mjd, &eclsn, &ecbsn, &rsn);}
+
 void MoonPos(double mjd,double *lmn,double *bmn,double *rho);
+inline void MoonPos(double mjd,double &lmn,double &bmn,double &rho)
+       {MoonPos( mjd, &lmn, &bmn, &rho);}
+
 void PlanetPos(double mjd,PLCode numplan,double *sunecl,double *sunecb,double *sundist
                ,double *geodist,double *geoecl,double *geoecb
 	       ,double *diamang,double *mag);
+inline void PlanetPos(double mjd,PLCode numplan,double &sunecl,double &sunecb,double &sundist
+               ,double &geodist,double &geoecl,double &geoecb
+	       ,double &diamang,double &mag)
+       {PlanetPos(mjd,numplan,&sunecl,&sunecb,&sundist,&geodist,&geoecl,&geoecb,&diamang,&mag);}
+
 /*! \ingroup XAstroPack
 \brief Same as PlanetPos above with less arguments
@@ -200,4 +278,10 @@
  PlanetPos(mjd,numplan,&sunecl,&sunecb,&sundist,geodist,geoecl,geoecb,diamang,&mag);
 }
+inline void PlanetPos(double mjd,PLCode numplan,double &geoecl,double &geoecb
+                      ,double &geodist,double &diamang)
+{
+ double sunecl,sunecb,sundist,mag;
+ PlanetPos(mjd,numplan,sunecl,sunecb,sundist,geodist,geoecl,geoecb,diamang,mag);
+}
 
 /*! \ingroup XAstroPack
@@ -208,4 +292,8 @@
   PlanetPos(mjd,JUPITER,ecl,ecb,geodist,diamang);
 }
+inline void JupiterPos(double mjd,double &ecl,double &ecb,double &geodist,double &diamang)
+{
+  PlanetPos(mjd,JUPITER,ecl,ecb,geodist,diamang);
+}
 
 /*! \ingroup XAstroPack
@@ -216,4 +304,8 @@
   PlanetPos(mjd,SATURN,ecl,ecb,geodist,diamang);
 }
+inline void SaturnPos(double mjd,double &ecl,double &ecb,double &geodist,double &diamang)
+{
+  PlanetPos(mjd,SATURN,ecl,ecb,geodist,diamang);
+}
 
 #endif
