Project
Loading...
Searching...
No Matches
DetMatrixCache.cxx
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
13#include <TGeoMatrix.h>
14#include "MathUtils/Utils.h"
15
16using namespace o2::detectors;
17
21
22//_______________________________________________________
24{
25 // set the size of the matrix cache, can be done only once
26 if (mSize != 0) {
27 LOG(fatal) << "Cache size (N sensors) was already set to " << mSize;
28 }
29 mSize = s;
30}
31
32void DetMatrixCacheIndirect::setSize(int size, int sizeIndirect)
33{
34 // set the size of the matrix cache, can be done only once
35 if (mSize != 0 || mIndirectSize != 0) {
36 LOG(fatal) << "Cache size (N sensors) was already set to " << mSize << " / " << mIndirectSize;
37 }
38 if (mIndirectSize >= 32768) {
39 LOG(fatal) << "Indirect cache size exceeds maximum size of 32768 (signed short)\n";
40 }
42 mIndirection.resize(mIndirectSize = sizeIndirect, -1);
43}
General auxilliary methods.
ClassImp(o2::detectors::MatrixCache< o2::math_utils::Transform3D >)
int mSize
prebooked number of sensors
MatrixCache is a vector of cached transform matrices (per sensor) for specific Transformation type.
GLsizeiptr size
Definition glcorearb.h:659
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"