Ignore:
Timestamp:
05/22/13 22:40:10 (11 years ago)
Author:
tbretz
Message:
Replaced the pointer argument when opening a file or writing an event by a const-reference.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/FACT++/src/DataWriteFits.cc

    r15628 r16055  
    3232//! @param h a pointer to the RUN_HEAD structure that contains the informations relative to this run
    3333//
    34 bool DataWriteFits::Open(const RUN_HEAD* h, const FAD::RunDescription &d)
     34bool DataWriteFits::Open(const RUN_HEAD &h, const FAD::RunDescription &d)
    3535{
    3636    if (fConv)
     
    4040    }
    4141
    42     const int16_t realRoiTM = (h->NroiTM >= 2*h->Nroi && h->Nroi<=512) ? h->Nroi : 0;
     42    const int16_t realRoiTM = (h.NroiTM >= 2*h.Nroi && h.Nroi<=512) ? h.Nroi : 0;
    4343
    4444    fFile.AddColumn('I', "EventNum");
     
    5252    fFile.AddColumn('S', "StartCellData",       NPIX);
    5353    fFile.AddColumn('S', "StartCellTimeMarker", NTMARK);
    54     fFile.AddColumn('S', "Data",                h->NPix*h->Nroi);       
    55     fFile.AddColumn('S', "TimeMarker",          h->NTm*realRoiTM);
     54    fFile.AddColumn('S', "Data",                h.NPix*h.Nroi);
     55    fFile.AddColumn('S', "TimeMarker",          h.NTm*realRoiTM);
    5656
    5757    // Write length of physical pipeline (1024)
    5858    fConv = new Converter(Converter::ToFormat(fFile.GetColumnTypes()));
    5959
    60     const size_t sz = (h->NPix*h->Nroi + h->NTm*realRoiTM)*2;
     60    const size_t sz = (h.NPix*h.Nroi + h.NTm*realRoiTM)*2;
    6161    if (fConv->GetSize()-sz+4!=sizeof(EVENT))
    6262    {
     
    8686    try
    8787    {
    88         fFile.WriteKey("BLDVER",   h->Version,  "Builder version");
     88        fFile.WriteKey("BLDVER",   h.Version,  "Builder version");
    8989        fFile.WriteKey("RUNID",    GetRunId(),  "Run number");
    90 //        fFile.WriteKey("RUNTYPE",  h->RunType,  "Type of run");
    91         fFile.WriteKey("NBOARD",   h->NBoard,   "Number of acquisition boards");
    92         fFile.WriteKey("NPIX",     h->NPix,     "Number of pixels");
    93         fFile.WriteKey("NTMARK",   h->NTm,      "Number of time marker channels");
     90//        fFile.WriteKey("RUNTYPE",  h.RunType,  "Type of run");
     91        fFile.WriteKey("NBOARD",   h.NBoard,   "Number of acquisition boards");
     92        fFile.WriteKey("NPIX",     h.NPix,     "Number of pixels");
     93        fFile.WriteKey("NTMARK",   h.NTm,      "Number of time marker channels");
    9494        fFile.WriteKey("NCELLS",   1024,        "Maximum number of slices per pixels");
    95         fFile.WriteKey("NROI",     h->Nroi,     "Number of slices per pixels");
     95        fFile.WriteKey("NROI",     h.Nroi,     "Number of slices per pixels");
    9696        fFile.WriteKey("NROITM",   realRoiTM,   "Number of slices per time-marker");
    9797
    98         const uint16_t realOffset = (h->NroiTM > h->Nroi) ?  h->NroiTM - 2*h->Nroi : 0;
     98        const uint16_t realOffset = (h.NroiTM > h.Nroi) ?  h.NroiTM - 2*h.Nroi : 0;
    9999        fFile.WriteKey("TMSHIFT",  realOffset,  "Shift of the start of the time marker readout wrt to data");
    100100
     
    119119        // DAC
    120120
    121         for (int i=0; i<h->NBoard; i++)
     121        for (int i=0; i<h.NBoard; i++)
    122122        {
    123             const PEVNT_HEADER &hh = h->FADhead[i];
     123            const PEVNT_HEADER &hh = h.FADhead[i];
    124124
    125125            // Header values whihc won't change during the run
     
    133133
    134134        // FIXME: Calculate average ref clock frequency
    135         for (int i=0; i<h->NBoard; i++)
     135        for (int i=0; i<h.NBoard; i++)
    136136        {
    137             const PEVNT_HEADER &hh = h->FADhead[i];
     137            const PEVNT_HEADER &hh = h.FADhead[i];
    138138
    139139            if (hh.start_package_flag==0)
     
    158158        double avg = 0;
    159159        int    cnt = 0;
    160         for (int i=0; i<h->NBoard; i++)
     160        for (int i=0; i<h.NBoard; i++)
    161161        {
    162             const PEVNT_HEADER &hh = h->FADhead[i];
     162            const PEVNT_HEADER &hh = h.FADhead[i];
    163163
    164164            if (hh.start_package_flag==0)
     
    198198//! @param e the pointer to the EVENT
    199199//
    200 bool DataWriteFits::WriteEvt(const EVENT *e)
     200bool DataWriteFits::WriteEvt(const EVENT &e)
    201201{
    202202    if (!fFile.AddRow())
    203203        return false;
    204204
    205     if (e->TriggerType && !(e->TriggerType & FAD::EventHeader::kAll))
     205    if (e.TriggerType && !(e.TriggerType & FAD::EventHeader::kAll))
    206206        fTriggerCounter[0]++;
    207     else  if ((e->TriggerType&FAD::EventHeader::kPedestal) && !(e->TriggerType&FAD::EventHeader::kTIM))
     207    else  if ((e.TriggerType&FAD::EventHeader::kPedestal) && !(e.TriggerType&FAD::EventHeader::kTIM))
    208208        fTriggerCounter[1]++;
    209     else if (e->TriggerType & FAD::EventHeader::kLPext)
     209    else if (e.TriggerType & FAD::EventHeader::kLPext)
    210210        fTriggerCounter[2]++;
    211     else if (e->TriggerType & (FAD::EventHeader::kTIM|FAD::EventHeader::kPedestal))
     211    else if (e.TriggerType & (FAD::EventHeader::kTIM|FAD::EventHeader::kPedestal))
    212212        fTriggerCounter[3]++;
    213     else if (e->TriggerType & FAD::EventHeader::kLPint)
     213    else if (e.TriggerType & FAD::EventHeader::kLPint)
    214214        fTriggerCounter[4]++;
    215     else if (e->TriggerType & FAD::EventHeader::kExt1)
     215    else if (e.TriggerType & FAD::EventHeader::kExt1)
    216216        fTriggerCounter[5]++;
    217     else if (e->TriggerType & FAD::EventHeader::kExt2)
     217    else if (e.TriggerType & FAD::EventHeader::kExt2)
    218218        fTriggerCounter[6]++;
    219219    else
    220220        fTriggerCounter[7]++;
    221221
    222     memcpy(fTstop, &e->PCTime, 2*sizeof(uint32_t));
     222    memcpy(fTstop, &e.PCTime, 2*sizeof(uint32_t));
    223223    if (fTstart[0]==0)
    224224        memcpy(fTstart, fTstop, 2*sizeof(uint32_t));
    225225
    226     const int realRoiTM = (e->RoiTM > e->Roi) ? e->Roi : 0;
    227     const size_t sz = sizeof(EVENT) + sizeof(e->StartPix)*e->Roi+sizeof(e->StartTM)*realRoiTM; //ETIENNE from RoiTm to Roi
    228 
    229     const vector<char> data = fConv->ToFits(reinterpret_cast<const char*>(e)+4, sz-4);
     226    const int realRoiTM = (e.RoiTM > e.Roi) ? e.Roi : 0;
     227    const size_t sz = sizeof(EVENT) + sizeof(e.StartPix)*e.Roi+sizeof(e.StartTM)*realRoiTM; //ETIENNE from RoiTm to Roi
     228
     229    const vector<char> data = fConv->ToFits(reinterpret_cast<const char*>(&e)+4, sz-4);
    230230
    231231    return fFile.WriteData(data.data(), data.size());
Note: See TracChangeset for help on using the changeset viewer.