Changeset 1746 in Sophya for trunk/ArchTOIPipe


Ignore:
Timestamp:
Nov 12, 2001, 12:19:03 PM (24 years ago)
Author:
cmv
Message:

avec ou sans getdata bufferise cmv 12/11/2001

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ArchTOIPipe/ProcWSophya/toi2map.cc

    r1744 r1746  
    33//                               Christophe Magneville
    44//                               Reza Ansari
    5 // $Id: toi2map.cc,v 1.12 2001-11-10 00:14:55 aubourg Exp $
     5// $Id: toi2map.cc,v 1.13 2001-11-12 11:19:03 cmv Exp $
    66
    77#include "machdefs.h"
     
    8484
    8585////////////////////////////////////////////////////////////////////////
     86// define SANS_BUFFER
    8687void TOI2Map::run()
    8788{
     
    115116double mjd = MJDfrYear(mActualYear);
    116117
    117  int bufsz = 100;
    118  uint_8* bfgbolo = new uint_8[bufsz];
    119  double* bbolo   = new double[bufsz];
    120  double* bc1     = new double[bufsz];
    121  double* bc2     = new double[bufsz];
    122  int i0 = -1;
     118cout<<"TOI2Map::run() from "<<snb<<" to "<<sne;
     119#ifndef SANS_BUFFER
     120int bufsz = 100;
     121uint_8* bfgbolo = new uint_8[bufsz];
     122double* bbolo   = new double[bufsz];
     123double* bc1     = new double[bufsz];
     124double* bc2     = new double[bufsz];
     125int i0 = -1;
     126cout<<" (getData() bufferized)"<<endl;
     127#else
     128cout<<" (getData() not bufferized)"<<endl;
     129#endif
    123130
    124131// Remplissage des spheres
    125132for(int s=snb;s<=sne;s++) {
    126   if (i0<0 ||
    127       s<i0 ||
    128       s>=i0+bufsz) {
    129     i0 = s;
    130     int nget = bufsz;
    131     if (sne-s+1 < bufsz) {
    132       nget = sne-s+1;
    133     }
    134     getData(0, i0, nget, bc1);
    135     getData(1, i0, nget, bc2);
    136     getData(2, i0, nget, bbolo, bfgbolo);
    137   }
    138 
    139  
    140133  uint_8 fgbolo = 0;
    141   double bolo;
     134  double bolo,coord1,coord2;
    142135  //              Equatoriales   /   Galactiques
    143136  // coord1,2 =   alpha,delta    /   gLon,gLat
    144   //double coord1 = getData(0,s);
    145   //double coord2 = getData(1,s);
    146 
    147   //getData(2,s,bolo,fgbolo);
    148   bolo = bbolo[s-i0];
    149   fgbolo = bfgbolo[s-i0];
    150   double coord1 = bc1[s-i0];
    151   double coord2 = bc2[s-i0];
     137
     138#ifndef SANS_BUFFER
     139  if(i0<0 || s<i0 || s>=i0+bufsz) {
     140    i0 = s;
     141    int nget = (sne-s+1<bufsz)? nget=sne-s+1: bufsz;
     142    getData(0,i0,nget,bc1);
     143    getData(1,i0,nget,bc2);
     144    getData(2,i0,nget,bbolo,bfgbolo);
     145  }
     146  bolo = bbolo[s-i0]; fgbolo = bfgbolo[s-i0];
     147  coord1 = bc1[s-i0]; coord2 = bc2[s-i0];
     148#else
     149  getData(2,s,bolo,fgbolo);
     150  coord1 = getData(0,s);
     151  coord2 = getData(1,s);
     152#endif
     153
     154  // Comme il n'y a pas de toi en sortie, il faut dire
     155  // aux processeur/toi que l'on a plus besoin des donnees.
    152156  if (s%100 == 0) wontNeedBefore(s-1);
    153157  if(mTFlag && fgbolo&mBadFlag) continue;
     
    201205 cout<<endl;
    202206
     207#ifndef SANS_BUFFER
     208delete [] bbolo; delete [] bfgbolo;
     209delete [] bc1;   delete [] bc2;
     210#endif
     211
    203212//---------------------------------------------------------
    204213} catch (PException & exc) {
Note: See TracChangeset for help on using the changeset viewer.