Abstract class representing a write yielder. It is, a yielder which can use the FMSWriteFacade to write its output.
More...
#include <WriteYielder.h>
|
| WriteYielder (FMSWriteFacade &write, size_t bufferSize=256) |
| Default constructor for the abstract write yielder. More...
|
|
| Yielder (std::size_t bufferSize=256) |
| Default constructor for the abstract yielder. More...
|
|
void | yield () |
| Make the yielder flush its elements so the output is performed.
|
|
void | push (T const &elem) |
| Push the element into the yielder. The element could be simply accumulated or either it could be directly written to file depending on yielder status at push time. More...
|
|
virtual void | digest (vector< T > ©)=0 |
| Abstract method that must be overridden by any concrete Yielder implementation to specify how a yield output must be handled/digested.
|
|
virtual vector< T > | copyBuffer () const |
| Make a copy of the buffer with its current state. More...
|
|
void | setBufferSize (size_t const bufferSize) |
| Set the buffer size of the yielder, effectively. More...
|
|
size_t | getBufferSize () const |
| Obtain the current buffer size of the yielder. More...
|
|
|
FMSWriteFacade & | write |
| The facade for writing operations. More...
|
|
std::mutex | mtx |
| The mutex to handle concurrent push backs to the buffer vector and the yielding operation itself.
|
|
std::size_t | bufferSize |
| The number of elements that can be buffered before forcing the yield operation.
|
|
std::vector< T > | buffer |
| Where the elements are stored.
|
|
template<typename T>
class WriteYielder< T >
Abstract class representing a write yielder. It is, a yielder which can use the FMSWriteFacade to write its output.
- Author
- Alberto M. Esmoris Pena
- Version
- 1.0
- Template Parameters
-
T | The type of object handled by the yielder |
- See also
- helios::filems::FMSWriteFacade
◆ WriteYielder()
◆ write
The facade for writing operations.
- See also
- filems::FMSWriteFacade
The documentation for this class was generated from the following file: