ATLAS Offline Software
Event
ByteStreamCnvSvcLegacy
src
offline_EventStorage
v5_ESCompression.h
Go to the documentation of this file.
1
//Dear emacs, this is -*- c++ -*-
2
3
/*
4
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
8
#ifndef OFFLINE_EVENTSTORAGE_V5_ESCOMPRESSION_H
9
#define OFFLINE_EVENTSTORAGE_V5_ESCOMPRESSION_H
10
11
#include <string>
12
#include <sys/uio.h>
13
#include "ers/ers.h"
14
15
#include "
ByteStreamCnvSvcLegacy/offline_EventStorage/v5_EventStorageRecords.h
"
16
17
ERS_DECLARE_ISSUE
(
offline_EventStorage_v5
,
18
CompressionIssue,
19
ERS_EMPTY
,
ERS_EMPTY
)
20
21
ERS_DECLARE_ISSUE_BASE
(
offline_EventStorage_v5
,
22
ZlibFailed
,
23
offline_EventStorage_v5::CompressionIssue,
24
""
<<
message
<<
" - Zlib return code: "
25
<< return_code <<
" Zlib message: "
<< zlib_message,
26
ERS_EMPTY
,
27
((
const
char
*)
message
)
28
((
int
)return_code)
29
((std::string) zlib_message)
30
)
31
32
33
namespace
offline_EventStorage_v5
{
34
35
static
const
std::string compressiontag(
"Compression"
);
36
37
42
class
CompressionBuffer{
43
44
public
:
45
using
iovec_const =
offline_EventStorage_v5::iovec_const
;
46
47
virtual
~CompressionBuffer() {};
48
54
virtual
void
* handle() = 0;
55
63
virtual
void
realloc(
const
uint32_t
& newsize) = 0;
64
72
virtual
void
grow(
const
uint32_t
& newsize) = 0;
73
79
virtual
uint32_t
buffersize()
const
= 0;
80
};
81
82
83
CompressionType
string_to_type(
const
std::string&
type
);
84
std::string type_to_string(
const
CompressionType
&
type
);
85
86
104
void
zlibcompress(CompressionBuffer& compressed,
105
uint32_t
& compressedsize,
106
const
uint32_t
&
entries
,
107
const
struct
iovec_const*
iov
,
108
const
uint32_t
& totalsize,
109
const
uint32_t
&
level
);
110
111
127
void
zlibdecompress(CompressionBuffer& decompressed,
128
uint32_t
& decompressedsize,
129
const
void
* compressed,
130
const
uint32_t
& compsize);
131
132
}
133
134
#endif
dqt_zlumi_alleff_HIST.iov
iov
Definition:
dqt_zlumi_alleff_HIST.py:119
xAOD::uint32_t
setEventNumber uint32_t
Definition:
EventInfo_v1.cxx:127
v5_EventStorageRecords.h
offline_EventStorage_v5::iovec_const
Definition:
v5_EventStorageRecords.h:36
ReweightUtils.message
message
Definition:
ReweightUtils.py:15
python.iconfTool.models.loaders.level
level
Definition:
loaders.py:20
ERS_EMPTY
Configuration ERS_EMPTY
Definition:
PscIssues.h:32
offline_EventStorage_v5
Definition:
ByteStreamDataWriterV5.h:15
ZlibFailed
ZlibFailed
Definition:
v5_ESCompression.h:22
offline_EventStorage_v5::CompressionType
CompressionType
Definition:
v5_EventStorageRecords.h:41
ERS_DECLARE_ISSUE_BASE
ERS_DECLARE_ISSUE_BASE(afp, CantReadCool, dqm_core::Exception, "Cannot read folder '"<< folder<< "' from COOL database '"<< database<< "'", ERS_EMPTY,((std::string) database)((std::string) folder))
python.CaloScaleNoiseConfig.type
type
Definition:
CaloScaleNoiseConfig.py:78
entries
double entries
Definition:
listroot.cxx:49
ERS_DECLARE_ISSUE
ERS_DECLARE_ISSUE(offline_EventStorage_v5, CompressionIssue, ERS_EMPTY, ERS_EMPTY) ERS_DECLARE_ISSUE_BASE(offline_EventStorage_v5
Generated on Thu Nov 7 2024 21:31:20 for ATLAS Offline Software by
1.8.18