![]() |
fpmas 1.6
|
#include <csv_output.h>
Public Member Functions | |
DistributedCsvOutput (api::communication::MpiCommunicator &comm, int root, api::io::OutputStream &output_stream, DistributedCsvField< DataFieldOperation >... csv_fields) | |
DistributedCsvOutput (api::communication::MpiCommunicator &comm, api::io::OutputStream &output_stream, DistributedCsvField< DataFieldOperation >... csv_fields) | |
void | dump () override |
![]() | |
OutputBase (api::io::OutputStream &output_stream) | |
const api::scheduler::Job & | job () override |
virtual void | dump ()=0 |
virtual const scheduler::Job & | job ()=0 |
Additional Inherited Members | |
![]() | |
void | dump_csv (const std::vector< std::string > &data) |
std::vector< std::string > | headers () |
std::vector< std::string > | dump_fields () |
CsvOutputBase (api::io::OutputStream &output_stream, std::pair< std::string, std::function< DataField()> >... csv_fields) | |
![]() | |
api::io::OutputStream & | output_stream |
A distributed api::output::Output implementation that dumps CSV data to an output stream.
Data is automatically gathered on all processes, and can be dumped on one processes or on all the processes.
DataField | types of data in each row |
|
inline |
DistributedCsvOutput constructor.
When this version is used, specifying a root
parameter, data is only dumped on output_stream
on the process corresponding to root
(according to the specified comm
). On all other processes, output_stream
is ignored.
comm | MPI communicator |
root | rank of the process on which data is dumped |
output_stream | output stream on which data are dumped (ignored on processes other than root ) |
csv_fields | tuples of type {"field_name", watcher, params} , where watcher is a callable object used to fetch data corresponding to "field_name" . params is optional. See examples for concrete use cases. |
|
inline |
DistributedCsvOutput constructor.
When this version is used, withou specifying a root
parameter, data is dumped on output_stream
on all the processes.
comm | MPI communicator |
output_stream | output stream on which data are dumped on each process |
csv_fields | tuples of type {"field_name", watcher, params} , where watcher is a callable object used to fetch data corresponding to "field_name" . params is optional. See examples for concrete use cases. |
|
inlineoverridevirtual |
The dump process is implictly performed in several steps:
output_stream
Depending on the constructor used, data is gathered and dumped only at root
or on all the processes.
Implements fpmas::api::io::Output.