SRS-control 0.1.4
 
Loading...
Searching...
No Matches
srs::workflow::TaskDiagram Class Reference

#include <TaskDiagram.hpp>

Collaboration diagram for srs::workflow::TaskDiagram:

Public Types

using StartingCoroType = asio::experimental::coro<std::string_view(bool)>
 

Public Member Functions

 TaskDiagram (Handler *data_processor, asio::thread_pool &thread_pool)
 
 ~TaskDiagram ()
 
 TaskDiagram (const TaskDiagram &)=delete
 
 TaskDiagram (TaskDiagram &&)=delete
 
TaskDiagramoperator= (const TaskDiagram &)=delete
 
TaskDiagramoperator= (TaskDiagram &&)=delete
 
auto analysis_one (tbb::concurrent_bounded_queue< process::SerializableMsgBuffer > &data_queue, bool is_blocking) -> bool
 
void set_output_filenames (const std::vector< std::string > &filenames)
 
void reset ()
 
template<process::DataConvertOptions option>
auto get_data () -> std::string_view
 
auto get_struct_data () -> const auto &
 

Private Member Functions

auto generate_starting_coro (asio::any_io_executor) -> StartingCoroType
 
auto run_processes (bool is_stopped) -> std::expected< void, std::string_view >
 

Private Attributes

process::SerializableMsgBuffer binary_data_
 
process::Raw2DelimRawConverter raw_to_delim_raw_converter_
 
process::StructDeserializer struct_deserializer_
 
process::Struct2ProtoConverter struct_proto_converter_
 
process::ProtoSerializer proto_serializer_
 
process::ProtoDelimSerializer proto_delim_serializer_
 
StartingCoroType coro_
 
writer::Manager writers_
 

Detailed Description

Definition at line 15 of file TaskDiagram.hpp.

Member Typedef Documentation

◆ StartingCoroType

using srs::workflow::TaskDiagram::StartingCoroType = asio::experimental::coro<std::string_view(bool)>

Definition at line 28 of file TaskDiagram.hpp.

Constructor & Destructor Documentation

◆ TaskDiagram() [1/3]

srs::workflow::TaskDiagram::TaskDiagram ( Handler * data_processor,
asio::thread_pool & thread_pool )
explicit

Definition at line 9 of file TaskDiagram.cpp.

◆ ~TaskDiagram()

srs::workflow::TaskDiagram::~TaskDiagram ( )

Definition at line 45 of file TaskDiagram.cpp.

◆ TaskDiagram() [2/3]

srs::workflow::TaskDiagram::TaskDiagram ( const TaskDiagram & )
delete

◆ TaskDiagram() [3/3]

srs::workflow::TaskDiagram::TaskDiagram ( TaskDiagram && )
delete

Member Function Documentation

◆ analysis_one()

auto srs::workflow::TaskDiagram::analysis_one ( tbb::concurrent_bounded_queue< process::SerializableMsgBuffer > & data_queue,
bool is_blocking ) -> bool

Definition at line 21 of file TaskDiagram.cpp.

◆ generate_starting_coro()

auto srs::workflow::TaskDiagram::generate_starting_coro ( asio::any_io_executor ) -> StartingCoroType
private

Definition at line 105 of file TaskDiagram.cpp.

◆ get_data()

template<process::DataConvertOptions option>
auto srs::workflow::TaskDiagram::get_data ( ) -> std::string_view

Definition at line 59 of file TaskDiagram.hpp.

◆ get_struct_data()

auto srs::workflow::TaskDiagram::get_struct_data ( ) -> const auto&
inline

Definition at line 40 of file TaskDiagram.hpp.

◆ operator=() [1/2]

TaskDiagram & srs::workflow::TaskDiagram::operator= ( const TaskDiagram & )
delete

◆ operator=() [2/2]

TaskDiagram & srs::workflow::TaskDiagram::operator= ( TaskDiagram && )
delete

◆ reset()

void srs::workflow::TaskDiagram::reset ( )

Definition at line 119 of file TaskDiagram.cpp.

◆ run_processes()

auto srs::workflow::TaskDiagram::run_processes ( bool is_stopped) -> std::expected<void, std::string_view>
private

Definition at line 56 of file TaskDiagram.cpp.

◆ set_output_filenames()

void srs::workflow::TaskDiagram::set_output_filenames ( const std::vector< std::string > & filenames)

Definition at line 125 of file TaskDiagram.cpp.

Member Data Documentation

◆ binary_data_

process::SerializableMsgBuffer srs::workflow::TaskDiagram::binary_data_
private

Definition at line 43 of file TaskDiagram.hpp.

◆ coro_

StartingCoroType srs::workflow::TaskDiagram::coro_
private

Definition at line 50 of file TaskDiagram.hpp.

◆ proto_delim_serializer_

process::ProtoDelimSerializer srs::workflow::TaskDiagram::proto_delim_serializer_
private

Definition at line 48 of file TaskDiagram.hpp.

◆ proto_serializer_

process::ProtoSerializer srs::workflow::TaskDiagram::proto_serializer_
private

Definition at line 47 of file TaskDiagram.hpp.

◆ raw_to_delim_raw_converter_

process::Raw2DelimRawConverter srs::workflow::TaskDiagram::raw_to_delim_raw_converter_
private

Definition at line 44 of file TaskDiagram.hpp.

◆ struct_deserializer_

process::StructDeserializer srs::workflow::TaskDiagram::struct_deserializer_
private

Definition at line 45 of file TaskDiagram.hpp.

◆ struct_proto_converter_

process::Struct2ProtoConverter srs::workflow::TaskDiagram::struct_proto_converter_
private

Definition at line 46 of file TaskDiagram.hpp.

◆ writers_

writer::Manager srs::workflow::TaskDiagram::writers_
private

Definition at line 52 of file TaskDiagram.hpp.


The documentation for this class was generated from the following files: