bool SameGeometrie(const cFileOriMnt & aF1,const cFileOriMnt & aF2)
{
   if (aF1.Geometrie() != aF2.Geometrie())
      return false;

   if (aF1.Geometrie() == eGeomMNTCarto )
   {
      if (aF1.NumZoneLambert().Val() != aF2.NumZoneLambert().Val())
         return false;
   }

   if (aF1.Geometrie() == eGeomMNTEuclid )
   {
      if (aF1.OrigineTgtLoc().IsInit() != aF2.OrigineTgtLoc().IsInit())
         return false;

      if (aF1.OrigineTgtLoc().IsInit() )
      {
         if (aF1.OrigineTgtLoc().Val() != aF2.OrigineTgtLoc().Val())
            return false;
      }
   }

   return true;
}
void dump(const cFileOriMnt &aFileOriMnt, const string &aPrefix = string(), ostream &aStream = cout)
{
	aStream << aPrefix << "NameFileMnt     = [" << aFileOriMnt.NameFileMnt() << ']' << endl;
	if (aFileOriMnt.NameFileMasque().IsInit()) aStream << aPrefix << "NameFileMasque  = [" << aFileOriMnt.NameFileMasque().Val() << ']' << endl;
	aStream << aPrefix << "NombrePixels    = " << aFileOriMnt.NombrePixels() << endl;
	aStream << aPrefix << "OriginePlani    = " << aFileOriMnt.OriginePlani() << endl;
	aStream << aPrefix << "ResolutionPlani = " << aFileOriMnt.ResolutionPlani() << endl;
	aStream << aPrefix << "OrigineAlti     = " << aFileOriMnt.OrigineAlti() << endl;
	aStream << aPrefix << "ResolutionAlti  = " << aFileOriMnt.ResolutionAlti() << endl;
	if (aFileOriMnt.NumZoneLambert().IsInit()) aStream << aPrefix << "NumZoneLambert  = " << aFileOriMnt.NumZoneLambert().Val() << endl;
	aStream << aPrefix << "Geometrie       = " << eToString(aFileOriMnt.Geometrie()) << endl;
	if (aFileOriMnt.OrigineTgtLoc().IsInit()) aStream << aPrefix << "OrigineTgtLoc  = " << aFileOriMnt.OrigineTgtLoc().Val() << endl;
	if (aFileOriMnt.Rounding().IsInit()) aStream << aPrefix << "Rounding  = " << aFileOriMnt.Rounding().Val() << endl;
}