Skip to content
Snippets Groups Projects
Commit 0ac98238 authored by Alexandru Bercuci's avatar Alexandru Bercuci Committed by Florian Uhlig
Browse files

fix codding convention

parent e6d1294e
No related branches found
No related tags found
1 merge request!728Add Trd2d to the data reconstruction
......@@ -63,13 +63,13 @@ void CbmTrdParFasp::LoadParams(FairParamList* l)
}
void CbmTrdParFasp::LoadParams(TArrayI& valArray, Int_t iAsic)
{
{
// Where does the asic info start in large array
Int_t offset = iAsic * (1 + NFASPCH * 4);
// Int_t asicAddress = valArray[ offset++ ];
offset++;
for (Int_t ich(0); ich < NFASPCH; ich++) {
Int_t pair = ich % 2; // TODO pairing should be set from the external parameters
Int_t pair = ich % 2; // TODO pairing should be set from the external parameters
SetChannelAddress(valArray[offset++]);
fCalib[ich].SetPairing(pair);
}
......
......@@ -42,7 +42,7 @@ public:
/** \brief Query pad pairing type.*/
Bool_t HasPairingR() const { return TESTBIT(fConfig, kPair); }
Bool_t HasPairingT() const { return !TESTBIT(fConfig, kPair); }
void Print(Option_t* opt = "") const;
/** \brief Specify pad pairing type.
*\param[in] rect if rect=kTRUE rectangular pairing; tilt otherwise
......
......@@ -190,18 +190,16 @@ void CbmTrdParSetAsic::putParams(FairParamList* l)
CbmTrdParFasp* fasp = (CbmTrdParFasp*) iModuleIt.second;
for (Int_t ich(0); ich < nchannels; ich++) {
// for (Int_t ipair(0); ipair < 2; ipair++) {
Int_t faspAddress = fasp->GetChannelAddress(ich);
asicInfo[offset + 1 + ich] = faspAddress;
const CbmTrdParFaspChannel* ch = fasp->GetChannel(ich);
if(!ch) {
LOG(info) << "Missing calib for Fasp[" << offset << "] pad " << faspAddress;
continue;
}
asicInfo[offset + 1 + (1 * NFASPCH) + ich] = ch->GetPileUpTime();
asicInfo[offset + 1 + (2 * NFASPCH) + ich] = ch->GetThreshold();
asicInfo[offset + 1 + (3 * NFASPCH) + ich] = ch->GetMinDelaySignal();
// }
Int_t faspAddress = fasp->GetChannelAddress(ich);
asicInfo[offset + 1 + ich] = faspAddress;
const CbmTrdParFaspChannel* ch = fasp->GetChannel(ich);
if (!ch) {
LOG(info) << "Missing calib for Fasp[" << offset << "] pad " << faspAddress;
continue;
}
asicInfo[offset + 1 + (1 * NFASPCH) + ich] = ch->GetPileUpTime();
asicInfo[offset + 1 + (2 * NFASPCH) + ich] = ch->GetThreshold();
asicInfo[offset + 1 + (3 * NFASPCH) + ich] = ch->GetMinDelaySignal();
}
iAsicNr++;
}
......
......@@ -29,10 +29,7 @@
using namespace std;
CbmTrdUnpackAlgoFasp2D::CbmTrdUnpackAlgoFasp2D()
: CbmRecoUnpackAlgo("CbmTrdUnpackAlgoFasp2D")
, fModuleId()
, fAsicPar()
CbmTrdUnpackAlgoFasp2D::CbmTrdUnpackAlgoFasp2D() : CbmRecoUnpackAlgo("CbmTrdUnpackAlgoFasp2D"), fModuleId(), fAsicPar()
{
memset(fTime, 0, NCRI * sizeof(ULong64_t));
}
......@@ -118,10 +115,11 @@ CbmTrdUnpackAlgoFasp2D::GetParContainerRequest(std::string geoTag, std::uint32_t
}
//_________________________________________________________________________________
void CbmTrdUnpackAlgoFasp2D::SetAsicMapping(const std::map<uint32_t, uint8_t[NFASPMOD]> &asicMap)
void CbmTrdUnpackAlgoFasp2D::SetAsicMapping(const std::map<uint32_t, uint8_t[NFASPMOD]>& asicMap)
{
if(!fFaspMap) fFaspMap = new std::map<uint32_t, uint8_t[NFASPMOD]>(asicMap);
else (*fFaspMap) = asicMap;
if (!fFaspMap) fFaspMap = new std::map<uint32_t, uint8_t[NFASPMOD]>(asicMap);
else
(*fFaspMap) = asicMap;
}
//_________________________________________________________________________________
......@@ -132,11 +130,11 @@ void CbmTrdUnpackAlgoFasp2D::PrintAsicMapping()
return;
}
LOG(info) << GetName() << "Fasp Asic mapping on modules:";
for(auto imod : (*fFaspMap)) {
for (auto imod : (*fFaspMap)) {
printf("Mod [%6d] : ", imod.first);
for(int ifasp(0); ifasp<NFASPMOD; ifasp++) {
for (int ifasp(0); ifasp < NFASPMOD; ifasp++) {
int jfasp = imod.second[ifasp];
printf("%2d ", (jfasp == 0xff ?-1:jfasp));
printf("%2d ", (jfasp == 0xff ? -1 : jfasp));
}
printf("\n");
}
......@@ -185,7 +183,7 @@ void CbmTrdUnpackAlgoFasp2D::mess_readEW(uint32_t w, CbmTrdFaspContent* mess)
//_________________________________________________________________________________
void CbmTrdUnpackAlgoFasp2D::mess_prt(CbmTrdFaspContent* mess)
{
if (mess->type == kData)
if (mess->type == kData)
cout << boost::format(" DATA : fasp_id=%02d ch_id=%02d tclk=%03d data=%4d\n")
% static_cast<unsigned int>(mess->fasp) % static_cast<unsigned int>(mess->ch)
% static_cast<unsigned int>(mess->tlab) % static_cast<unsigned int>(mess->data);
......@@ -195,8 +193,7 @@ void CbmTrdUnpackAlgoFasp2D::mess_prt(CbmTrdFaspContent* mess)
}
//_________________________________________________________________________________
bool CbmTrdUnpackAlgoFasp2D::pushDigis(
std::vector<CbmTrdUnpackAlgoFasp2D::CbmTrdFaspContent*> messes)
bool CbmTrdUnpackAlgoFasp2D::pushDigis(std::vector<CbmTrdUnpackAlgoFasp2D::CbmTrdFaspContent*> messes)
{
UChar_t lFasp(0xff);
UShort_t lchR, lchT;
......@@ -220,21 +217,24 @@ bool CbmTrdUnpackAlgoFasp2D::pushDigis(
LOG(error) << GetName() << "::pushDigis - DIGI par for module " << imess->cri << " missing. Skip.";
return false;
}
if(VERBOSE) faspPar->Print();
pad = faspPar->GetChannelAddress(imess->ch);
if (VERBOSE) faspPar->Print();
pad = faspPar->GetChannelAddress(imess->ch);
chCalib = faspPar->GetChannel(imess->ch);
ch = 2 * pad + chCalib->HasPairingR();
row = digiPar->GetPadRow(pad);
if(VERBOSE) printf("fasp[%2d] ch[%4d / %2d] pad[%4d] row[%2d] col[%2d] tilt[%d]\n", lFasp, ch, imess->ch, pad, row, digiPar->GetPadColumn(pad), chCalib->HasPairingT());
if (VERBOSE)
printf("fasp[%2d] ch[%4d / %2d] pad[%4d] row[%2d] col[%2d] tilt[%d]\n", lFasp, ch, imess->ch, pad, row,
digiPar->GetPadColumn(pad), chCalib->HasPairingT());
}
if (VERBOSE) mess_prt(imess);
lchR = 0;
lchT = 0;
lchR = 0;
lchT = 0;
chCalib = faspPar->GetChannel(imess->ch);
if(chCalib->HasPairingR()) lchR = imess->data;
else lchT = imess->data;
if (chCalib->HasPairingR()) lchR = imess->data;
else
lchT = imess->data;
pad = faspPar->GetChannelAddress(imess->ch);
bool use(false);
......@@ -348,7 +348,7 @@ bool CbmTrdUnpackAlgoFasp2D::unpack(const fles::Timeslice* ts, std::uint16_t ico
}
else {
if (fFaspMap) fasp_id = ((*fFaspMap)[mod_id])[fasp_id];
if (lFaspOld != fasp_id) {
// push
if (vDigi.size()) { pushDigis(vDigi); }
......
......@@ -24,8 +24,8 @@
#include "CbmRecoUnpackAlgo.tmpl"
#include "CbmTrdDigi.h"
#include "CbmTrdParSetAsic.h"
#include "CbmTrdParFasp.h"
#include "CbmTrdParSetAsic.h"
#include "Timeslice.hpp" // timeslice
......@@ -112,9 +112,9 @@ public:
/**
* @brief Introduce fasp index mapping
*/
void SetAsicMapping(const std::map<uint32_t, uint8_t[NFASPMOD]> &map);
void SetAsicMapping(const std::map<uint32_t, uint8_t[NFASPMOD]>& map);
void PrintAsicMapping();
protected:
/** @brief Get message type from the FASP word */
CbmTrdFaspMessageType mess_type(uint32_t wd);
......@@ -180,7 +180,7 @@ protected:
private:
void prt_wd(uint32_t w);
std::map<uint32_t, uint8_t[NFASPMOD]> *fFaspMap = nullptr;
std::map<uint32_t, uint8_t[NFASPMOD]>* fFaspMap = nullptr;
std::vector<Int_t> fModuleId;
CbmTrdParSetAsic fAsicPar;
CbmTrdParSetDigi* fDigiSet = nullptr;
......
/* Copyright (C) 2021 Goethe-University Frankfurt, Frankfurt
SPDX-License-Identifier: GPL-3.0-only
Authors: Pascal Raisig [committer] */
Authors: Pascal Raisig [committer], Alexandru Bercuci*/
#include "CbmTrdUnpackConfigFasp2D.h"
// #include "CbmTrdUnpackAlgoFasp2D.h"
// #include "CbmTrdParFasp.h"
/*
#include <Logger.h>
#include <Rtypes.h>
#include <RtypesCore.h>
#include <memory>
#include <vector>
#include <map>*/
CbmTrdUnpackConfigFasp2D::CbmTrdUnpackConfigFasp2D(std::string detGeoSetupTag, UInt_t runid)
: CbmRecoUnpackConfig("CbmTrdUnpackConfigFasp2D", detGeoSetupTag, runid)
, fFaspMap()
......@@ -47,9 +35,8 @@ void CbmTrdUnpackConfigFasp2D::InitAlgo()
{
if (fDoLog) LOG(info) << fName << "::InitAlgo - SetFaspMapping";
fAlgo->SetAsicMapping(fFaspMap);
//if (fDoLog)
fAlgo->PrintAsicMapping();
if (fDoLog) fAlgo->PrintAsicMapping();
// Now we have all information required to initialise the algorithm
fAlgo->Init();
}
......@@ -57,7 +44,7 @@ void CbmTrdUnpackConfigFasp2D::InitAlgo()
//_____________________________________________________________________
void CbmTrdUnpackConfigFasp2D::SetFaspMapping(int modAddress, uint8_t faspMap[NFASPMOD])
{
memcpy(fFaspMap[modAddress], faspMap, NFASPMOD*sizeof(uint8_t));
memcpy(fFaspMap[modAddress], faspMap, NFASPMOD * sizeof(uint8_t));
}
ClassImp(CbmTrdUnpackConfigFasp2D)
/* Copyright (C) 2021 Goethe-University Frankfurt, Frankfurt
SPDX-License-Identifier: GPL-3.0-only
Authors: Pascal Raisig [committer] */
Authors: Pascal Raisig [committer], Alexandru Bercuci*/
/**
* @file CbmTrdUnpackConfigFasp2D.h
......@@ -21,8 +21,8 @@
#include "CbmRecoUnpackConfig.tmpl"
#include "CbmTrdDigi.h"
#include "CbmTrdUnpackAlgoFasp2D.h"
#include "CbmTrdParFasp.h"
#include "CbmTrdUnpackAlgoFasp2D.h"
#include <FairLogger.h>
#include <Logger.h>
......@@ -32,9 +32,9 @@
#include <cstddef>
#include <cstdint>
#include <map>
#include <memory>
#include <vector>
#include <map>
class CbmTrdUnpackConfigFasp2D : public CbmRecoUnpackConfig<CbmTrdUnpackAlgoFasp2D, CbmTrdDigi> {
......@@ -70,6 +70,7 @@ public:
* @param faspMap mapped ids of FASP ASICs for module
*/
void SetFaspMapping(int modAddress, uint8_t faspMap[NFASPMOD]);
protected:
/**
* @brief Choose the derived unpacker algorithm to be used for the DAQ output to Digi translation. If algo was already set manually by the user this algorithm is used.
......@@ -80,7 +81,7 @@ protected:
private:
std::map<uint32_t, uint8_t[NFASPMOD]> fFaspMap; ///> DAQ packing of FASP id
ClassDef(CbmTrdUnpackConfigFasp2D, 4)
};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment