Changeset 8593 for trunk/MagicSoft


Ignore:
Timestamp:
06/22/07 18:03:08 (17 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mpointing
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mpointing/MPointing.cc

    r4966 r8593  
    9090#define DEBUG(txt)
    9191
    92 const Int_t MPointing::fNumPar=19;
     92const Int_t MPointing::fgNumPar=19;
    9393
    9494void MPointing::Init(const char *name, const char *title)
     
    9797    fTitle = title ? title : "Pointing correction model for the MAGIC telescope";
    9898
    99     fCoeff = new Double_t*[fNumPar];
    100     fNames = new TString[fNumPar];
    101     fDescr = new TString[fNumPar];
     99    fCoeff = new Double_t*[fgNumPar];
     100    fNames = new TString[fgNumPar];
     101    fDescr = new TString[fgNumPar];
    102102
    103103    fCoeff[ 0] = &fIa;      fNames[ 0] = "IA";
     
    146146}
    147147
    148 void MPointing::Load(const char *name)
     148Bool_t MPointing::Load(const char *name)
    149149{
    150150    /*
     
    164164    {
    165165        *fLog << err << "ERROR - Cannot open file '" << name << "'" << endl;
    166         return;
     166        return kFALSE;
    167167    }
    168168
     
    174174    {
    175175        *fLog << err << "Error: This in not a model correcting the star position (" << c << ")" << endl;
    176         return;
     176        return kFALSE;
    177177    }
    178178
     
    200200        TString str;
    201201        fin >> str;
     202        if (!fin)
     203        {
     204            *fLog << err << "ERROR - Reading file " << name << endl;
     205            return kFALSE;
     206        }
    202207
    203208        if (str=="END")
     
    226231        // Find parameter
    227232        Int_t n = -1;
    228         for (int i=0; i<fNumPar; i++)
     233        for (int i=0; i<fgNumPar; i++)
    229234            if (str==fNames[i])
    230235            {
     
    237242        *fLog << inf << setw(9) << val << "°" << endl;
    238243
     244        if (!fin)
     245        {
     246            *fLog << err << "ERROR - Reading line " << str << endl;
     247            return kFALSE;
     248        }
     249
     250        if (n<0)
     251        {
     252            *fLog << warn << "WARNING - Parameter " << str << " unknown." << endl;
     253            continue;
     254        }
     255
    239256        // corresponding error
    240257        fError[n] = val*TMath::DegToRad();
    241258    }
    242259    *fLog << inf << endl;
    243 }
    244 
    245 void MPointing::Save(const char *name)
     260
     261    return kTRUE;
     262}
     263
     264Bool_t MPointing::Save(const char *name)
    246265{
    247266    /*
     
    261280    {
    262281        cout << "Error: Cannot open file '" << name << "'" << endl;
    263         return;
     282        return kFALSE;
    264283    }
    265284
     
    270289    fout << "S   00   000000   000000  0000000" << endl;
    271290    fout << setprecision(8);
    272     for (int i=0; i<fNumPar; i++)
     291    for (int i=0; i<fgNumPar; i++)
    273292    {
    274293        fout << " " << setw(6) << GetVarName(i) << " ";
     
    277296    }
    278297    fout << "END" << endl;
     298
     299    return kTRUE;
    279300}
    280301
     
    652673{
    653674    if (n<0)
    654         n = fNumPar;
     675        n = fgNumPar;
    655676
    656677    Int_t ierflg = 0;
  • trunk/MagicSoft/Mars/mpointing/MPointing.h

    r7214 r8593  
    5151{
    5252private:
    53     static const Int_t fNumPar;
     53    static const Int_t fgNumPar;
    5454
    5555    Double_t fIe   ; // [rad] Index Error in Elevation
     
    8383    void Clear(Option_t *o="")
    8484    {
    85         for (int i=0; i<fNumPar; i++)
     85        for (int i=0; i<fgNumPar; i++)
    8686        {
    8787            *fCoeff[i] = 0;
     
    9494
    9595public:
    96     MPointing() { fError.Set(fNumPar); Init(); Clear(); }
    97     MPointing(const char *name) { fError.Set(fNumPar); Init(); Clear(); Load(name); }
    98     virtual ~MPointing() { delete fNames; delete fCoeff; delete fDescr; }
    99 
    100     void Load(const char *name);
    101     void Save(const char *name);
     96    MPointing() { fError.Set(fgNumPar); Init(); Clear(); }
     97    MPointing(const char *name) { fError.Set(fgNumPar); Init(); Clear(); Load(name); }
     98    virtual ~MPointing() { delete [] fNames; delete [] fCoeff; delete [] fDescr; }
     99
     100    Bool_t Load(const char *name);
     101    Bool_t Save(const char *name);
    102102
    103103    void Reset();
     
    117117    ZdAz operator()(const ZdAz &zdaz, void (*fcn)(ZdAz &zdaz, Double_t *par)) const
    118118    {
    119         Double_t par[fNumPar];
     119        Double_t par[fgNumPar];
    120120        GetParameters(par);
    121121        ZdAz za = zdaz;
     
    126126    AltAz operator()(const AltAz &aaz, void (*fcn)(AltAz &aaz, Double_t *par)) const
    127127    {
    128         Double_t par[fNumPar];
     128        Double_t par[fgNumPar];
    129129        GetParameters(par);
    130130        AltAz aa = aaz;
     
    135135    TVector3 operator()(const TVector3 &aaz, void (*fcn)(TVector3 &aaz, Double_t *par)) const
    136136    {
    137         Double_t par[fNumPar];
     137        Double_t par[fgNumPar];
    138138        GetParameters(par);
    139139        TVector3 v = aaz;
     
    174174    }
    175175
    176     void SetParameters(const Double_t *par, Int_t n=fNumPar);
    177     void GetParameters(Double_t *par, Int_t n=fNumPar) const;
     176    void SetParameters(const Double_t *par, Int_t n=fgNumPar);
     177    void GetParameters(Double_t *par, Int_t n=fgNumPar) const;
    178178
    179179    void SetParameters(const TArrayD &par)
     
    183183    void GetParameters(TArrayD &par) const
    184184    {
    185         par.Set(fNumPar);
     185        par.Set(fgNumPar);
    186186        GetParameters(par.GetArray());
    187187    }
     
    189189    {
    190190        par = fError;
    191         for (int i=0; i<fNumPar; i++)
     191        for (int i=0; i<fgNumPar; i++)
    192192            par[i] *= TMath::RadToDeg();
    193193    }
     
    217217     */
    218218
    219     static const Int_t GetNumPar() { return fNumPar; }
     219    static const Int_t GetNumPar() { return fgNumPar; }
    220220
    221221    ClassDef(MPointing, 1) // Pointing Model for MAGIC
Note: See TracChangeset for help on using the changeset viewer.