Changeset 1551 in Sophya for trunk/SophyaLib/SkyMap/localmap.h


Ignore:
Timestamp:
Jun 27, 2001, 10:14:39 AM (24 years ago)
Author:
ansari
Message:

Operateurs arithmetiques corriges,completes sur les PixelMap (LocalMap et SphericalMaps) - Reza 27/6/2001

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/SkyMap/localmap.h

    r1429 r1551  
    142142  virtual LocalMap<T>&  MulElt(const LocalMap<T>& a);
    143143  inline  LocalMap<T>&  operator *= (const LocalMap<T>& a)  { return MulElt(a); }
     144  virtual LocalMap<T>&  DivElt(const LocalMap<T>& a);
     145  inline  LocalMap<T>&  operator /= (const LocalMap<T>& a)  { return DivElt(a); }
    144146
    145147
     
    255257    return result; }
    256258
     259////////////////////////////////////////////////////////////////
     260// Surcharge d'operateurs C = A (*,/) B
     261
     262/*! \ingroup SkyMap \fn operator*(const LocalMap<T>&,const LocalMap<T>&)
     263  \brief Operator LocalMap = LocalMap * LocalMap (pixel by pixel multiply)*/
     264template <class T>
     265inline LocalMap<T> operator * (const LocalMap<T>& a,const LocalMap<T>& b)
     266    { LocalMap<T> result; result.SetTemp(true);
     267    if (b.IsTemp())  { result.Share(b); result.MulElt(a); }
     268    else { result.CloneOrShare(a); result.MulElt(b); }
     269    return result; }
     270
     271/*! \ingroup SkyMap \fn operator/(const LocalMap<T>&,const LocalMap<T>&)
     272  \brief Operator LocalMap = LocalMap / LocalMap (pixel by pixel divide)*/
     273template <class T>
     274inline LocalMap<T> operator / (const LocalMap<T>& a,const LocalMap<T>& b)
     275    { LocalMap<T> result; result.SetTemp(true);
     276    if (b.IsTemp())  { result.Share(b); result.DivElt(a); }
     277    else { result.CloneOrShare(a); result.DivElt(b); }
     278    return result; }
     279
     280
    257281
    258282} // Fin du namespace
Note: See TracChangeset for help on using the changeset viewer.