InputBufferingShare.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2007 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 #ifndef __InputBufferingShare_h
10 #define __InputBufferingShare_h
11 
12 #include "dsp/InputBuffering.h"
13 
14 class ThreadContext;
15 
16 namespace dsp {
17 
20 
21  public:
22 
24  Share ();
25 
28 
30  ~Share ();
31 
34 
36  void pre_transformation ();
37 
39  void post_transformation ();
40 
42  void set_next_start (uint64_t next_start_sample);
43 
45  void set_maximum_samples (uint64_t samples);
46 
48  uint64_t bytes_storage() const override;
49 
50  protected:
51 
54 
57 
60 
63 
66 
67  };
68 
69 }
70 
71 #endif // !defined(__InputBuffering_h)
Contains all Baseband Data Reduction Library classes.
Definition: ASCIIObservation.h:17
uint64_t bytes_storage() const override
Get the number of bytes of storage required by this buffer.
Definition: InputBufferingShare.C:72
Share()
Default constructor.
Definition: InputBufferingShare.C:18
Defines the interface by which Transformation data are buffered.
Definition: BufferingPolicy.h:29
HasInput< TimeSeries > * target
The target with input TimeSeries to be buffered.
Definition: InputBufferingShare.h:53
Buffers the Transformation input.
Definition: InputBuffering.h:26
ThreadContext * context
Multi-threaded context information.
Definition: InputBufferingShare.h:62
uint64_t next_start_sample
The next start sample.
Definition: InputBuffering.h:64
void set_next_start(uint64_t next_start_sample)
Set the first sample to be used from the input next time.
Definition: InputBufferingShare.C:80
void pre_transformation()
Perform all buffering tasks required before transformation.
Definition: InputBufferingShare.C:120
Reference::To< Reserve > reserve
The reserve manager.
Definition: InputBufferingShare.h:59
void post_transformation()
Perform all buffering tasks required after transformation.
Definition: InputBufferingShare.C:168
Reference::To< InputBuffering > buffer
The shared input buffering policy.
Definition: InputBufferingShare.h:56
Share * clone(HasInput< TimeSeries > *)
Sort-of clone.
Definition: InputBufferingShare.C:43
Remembers how much has been reserved and increases it if necessary.
Definition: Reserve.h:25
void set_maximum_samples(uint64_t samples)
Set the minimum number of samples that can be processed.
Definition: InputBufferingShare.C:62
~Share()
Destructor.
Definition: InputBufferingShare.C:55
Buffers the Transformation input.
Definition: InputBufferingShare.h:19
bool context_owner
Owner of the context attribute;.
Definition: InputBufferingShare.h:65

Generated using doxygen 1.8.17