Belle II Software
development
BufferedReader.h
1
/**************************************************************************
2
* basf2 (Belle II Analysis Software Framework) *
3
* Author: The Belle II Collaboration *
4
* *
5
* See git log for contributors and copyright holders. *
6
* This file is licensed under LGPL-3.0, see LICENSE.md. *
7
**************************************************************************/
8
#ifndef _Belle2_BufferedReader_hh
9
#define _Belle2_BufferedReader_hh
10
11
#include "daq/slc/base/Reader.h"
12
13
namespace
Belle2
{
19
class
BufferedReader
:
public
Reader
{
20
21
// constructors & destructors
22
public
:
23
BufferedReader
();
24
BufferedReader
(
size_t
size,
unsigned
char
* memory = NULL);
25
BufferedReader
(
const
BufferedReader
& r);
26
virtual
~BufferedReader
();
27
28
// member methods implemented
29
public
:
30
void
seekTo(
size_t
pos) { m_pos = pos; }
31
unsigned
char
* ptr() {
return
m_memory; }
32
size_t
count()
const
{
return
m_pos; }
33
size_t
size()
const
{
return
m_size; }
34
void
copy(
const
void
*,
size_t
);
35
size_t
read(
void
*,
size_t
)
override
;
36
bool
available()
override
{
return
true
; }
37
38
public
:
39
const
BufferedReader
& operator = (
const
BufferedReader
&);
40
41
// member data
42
protected
:
43
unsigned
char
* m_memory;
44
size_t
m_size;
45
size_t
m_pos;
46
bool
m_allocated;
47
48
};
49
51
}
52
53
#endif
Belle2::BufferedReader
Definition:
BufferedReader.h:19
Belle2::Reader
Definition:
Reader.h:22
Belle2
Abstract base class for different kinds of events.
Definition:
MillepedeAlgorithm.h:17
daq
slc
system
include
BufferedReader.h
Generated on Fri Nov 8 2024 02:35:47 for Belle II Software by
1.9.6