Ignore:
Timestamp:
Nov 9, 1999, 3:04:05 PM (26 years ago)
Author:
ansari
Message:

portage cxx en cours

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Poubelle/archTOI.old/galcrosslocator.cc

    r534 r555  
    99#define alphaZenith     "alphaZenith"
    1010#define deltaZenith     "deltaZenith"
    11 #define rotSpeed        "rotSpeed"
     11#define rotSpeed        "rotSpeed0"
    1212#define rotSpeedSample1 "rotSpeedSample1"
    1313#define rotSpeedSample2 "rotSpeedSample2"
     
    2222#define alphaBolo       "alphaBolo"
    2323#define deltaBolo       "deltaBolo"
     24#define azimuthSST      "azimuthSST"
     25#define elvSST          "elvSST"
     26#define alphaSST        "alphaSST"
     27#define deltaSST        "deltaSST"
    2428
     29// Note : rotSpeed is an estimate, does not take into account balloon drift.
     30// accurate value between two galactic crossings has to be determined afterwards
     31// as a derived TOI.
    2532
    2633GalCrossLocator::GalCrossLocator() {
    27   possibleTOIs.insert(TOI(alphaZenith,      TOI::unspec, "", "hours",   "galcross0")); 
    28   possibleTOIs.insert(TOI(deltaZenith,      TOI::unspec, "", "degrees", "galcross0")); 
    29   possibleTOIs.insert(TOI(rotSpeed,         TOI::unspec, "", "deg/s",   "galcross0")); 
    30   possibleTOIs.insert(TOI(rotSpeedSample1,  TOI::unspec, "", "integer", "galcross0")); 
    31   possibleTOIs.insert(TOI(rotSpeedSample2,  TOI::unspec, "", "integer", "galcross0")); 
    32   possibleTOIs.insert(TOI(lastCrossSample,  TOI::unspec, "", "integer", "galcross0")); 
    33   possibleTOIs.insert(TOI(lastCrossSample,  TOI::unspec, "", "integer", "galcross0")); 
    34   possibleTOIs.insert(TOI(nextCrossSample,  TOI::unspec, "", "integer", "galcross0")); 
    35   possibleTOIs.insert(TOI(azimuthFPC,       TOI::unspec, "", "degrees", "galcross0")); 
    36   possibleTOIs.insert(TOI(elvFPC,           TOI::unspec, "", "degrees", "galcross0")); 
    37   possibleTOIs.insert(TOI(alphaFPC,         TOI::unspec, "", "hours",   "galcross0")); 
    38   possibleTOIs.insert(TOI(deltaFPC,         TOI::unspec, "", "degrees", "galcross0")); 
    39   possibleTOIs.insert(TOI(azimuthBolo,      TOI::all,    "", "degrees", "galcross0")); 
    40   possibleTOIs.insert(TOI(elvBolo,          TOI::all,    "", "degrees", "galcross0")); 
    41   possibleTOIs.insert(TOI(alphaBolo,        TOI::all,    "", "hours",   "galcross0")); 
    42   possibleTOIs.insert(TOI(deltaBolo,        TOI::all,    "", "degrees", "galcross0")); 
     34  possibleTOIs.insert(TOI(alphaZenith,      TOI::unspec, "interp flag", "hours",   "")); 
     35  possibleTOIs.insert(TOI(deltaZenith,      TOI::unspec, "interp flag", "degrees", "")); 
     36  possibleTOIs.insert(TOI(rotSpeed,         TOI::unspec, "interp flag", "deg/s",   "galcross0")); 
     37  possibleTOIs.insert(TOI(rotSpeedSample1,  TOI::unspec, "interp flag", "integer", "galcross0")); 
     38  possibleTOIs.insert(TOI(rotSpeedSample2,  TOI::unspec, "interp flag", "integer", "galcross0")); 
     39  possibleTOIs.insert(TOI(lastCrossSample,  TOI::unspec, "interp flag", "integer", "galcross0")); 
     40  possibleTOIs.insert(TOI(nextCrossSample,  TOI::unspec, "interp flag", "integer", "galcross0")); 
     41  possibleTOIs.insert(TOI(azimuthFPC,       TOI::unspec, "interp flag", "degrees", "galcross0")); 
     42  possibleTOIs.insert(TOI(elvFPC,           TOI::unspec, "interp flag", "degrees", "galcross0")); 
     43  possibleTOIs.insert(TOI(alphaFPC,         TOI::unspec, "interp flag", "hours",   "galcross0")); 
     44  possibleTOIs.insert(TOI(deltaFPC,         TOI::unspec, "interp flag", "degrees", "galcross0")); 
     45  possibleTOIs.insert(TOI(azimuthBolo,      TOI::all,    "interp flag", "degrees", "galcross0")); 
     46  possibleTOIs.insert(TOI(elvBolo,          TOI::all,    "interp flag", "degrees", "galcross0")); 
     47  possibleTOIs.insert(TOI(alphaBolo,        TOI::all,    "interp flag", "hours",   "galcross0")); 
     48  possibleTOIs.insert(TOI(deltaBolo,        TOI::all,    "interp flag", "degrees", "galcross0")); 
     49  possibleTOIs.insert(TOI(azimuthSST,       TOI::unspec, "interp flag", "degrees", "galcross0")); 
     50  possibleTOIs.insert(TOI(elvSST,           TOI::unspec, "interp flag", "degrees", "galcross0")); 
     51  possibleTOIs.insert(TOI(alphaSST,         TOI::unspec, "interp flag", "hours",   "galcross0")); 
     52  possibleTOIs.insert(TOI(deltaSST,         TOI::unspec, "interp flag", "degrees", "galcross0")); 
    4353}
    4454
     
    5565double GalCrossLocator::getValue(long sampleNum, TOI const& toi) {
    5666  if (!canGetValue(sampleNum, toi)) return -1;
     67 
     68  if (toi.options.find("flag") != toi.options.end()) {
     69     int SN1, SN2;
     70     tempLocator.getCrossSamples(sampleNum, SN1, SN2);
     71     if (sampleNum == SN1 || sampleNum == SN2) return 1;
     72     return 0;
     73  }
    5774
    58   map<TOI, TOIProducer*> m = neededTOIs[toi];
     75  map<TOI, TOIProducer*>  & m = neededTOIs[toi];
    5976  double lat, lon, ts;
    6077 
    6178  for (map<TOI, TOIProducer*>::iterator i = m.begin(); i != m.end(); i++) {
    62     TOI inToi = (*i).first;
     79    TOI const& inToi = (*i).first;
    6380    TOIProducer* prod =  (*i).second;
    6481    if (inToi.name == "latitude")  lat = prod->getValue(sampleNum, inToi);
     
    83100  if (toi.name == alphaBolo)       return tempLocator.getAlphaBolo(sampleNum, toi.index);
    84101  if (toi.name == deltaBolo)       return tempLocator.getDeltaBolo(sampleNum, toi.index);
     102
     103  if (toi.name == azimuthSST)      return tempLocator.getAzimutSST(sampleNum);
     104  if (toi.name == elvSST)          return tempLocator.getElvSST(sampleNum);
     105  if (toi.name == alphaSST)        return tempLocator.getAlphaSST(sampleNum);
     106  if (toi.name == deltaSST)        return tempLocator.getDeltaSST(sampleNum);
    85107
    86108  if (toi.name == lastCrossSample || toi.name == rotSpeedSample1) {
Note: See TracChangeset for help on using the changeset viewer.