libadc-cxx 1.0.0
Structured logging for scientific computing
Loading...
Searching...
No Matches
Macros | Functions | Variables
testBuilder.cpp File Reference
#include "adc/factory.hpp"
#include <cerrno>
#include <cstring>
#include <limits>
Include dependency graph for testBuilder.cpp:

Go to the source code of this file.

Macros

#define ROUNDTRIP(NAME, VAL, CPTYPE, CTYPE)
 
#define ROUNDTRIP_ARRAY_STRING(NAME, VAL, COUNT, CTYPE_VAL)   roundtrip_array_string<CTYPE_VAL>(NAME, VAL, COUNT, b)
 
#define ROUNDTRIP_ARRAY(NAME, VAL, COUNT, CTYPE, CPTYPE)   roundtrip_array<CTYPE>(NAME, VAL, adc:: CPTYPE, COUNT, b)
 
#define ROUNDTRIP_STRING(NAME, VAL, CPTYPE)   roundtrip_string(NAME, VAL, adc:: CPTYPE, b)
 

Functions

int test_publisher (std::shared_ptr< adc::publisher_api > pi, std::shared_ptr< adc::builder_api > b)
 
template<typename CTYPE >
void roundtrip_array (const char *name, CTYPE *val, adc::scalar_type cptype, size_t count, std::shared_ptr< adc::builder_api > b)
 
void roundtrip_string (const char *name, const char *val, adc::scalar_type cptype, std::shared_ptr< adc::builder_api > b)
 
void populate_builder (std::shared_ptr< adc::builder_api > b, adc::factory &f)
 
int main (int, char **)
 

Variables

std::map< std::string, std::string > adc_plugin_file_config
 
std::map< std::string, std::string > file_config
 

Macro Definition Documentation

◆ ROUNDTRIP

#define ROUNDTRIP (   NAME,
  VAL,
  CPTYPE,
  CTYPE 
)
Value:
ck = b->get_value(NAME); \
std::cerr << NAME << " roundtrip " << std::flush ; \
if (ck.kt != adc::k_value || ck.count != 1 || ck.st != adc::CPTYPE || \
*((CTYPE *)ck.vp) != VAL || !( std::get<CTYPE>(ck.data) == VAL) ) { \
std::cerr << "BAD" << std::endl; \
std::cerr << "\tkt: " << ck.kt <<std::endl; \
std::cerr << "\tst: " << to_string(ck.st) <<std::endl; \
std::cerr << "\tcount: " << ck.count <<std::endl; \
std::cerr << "\tvp: " << (CTYPE *)ck.vp <<std::endl; \
std::cerr << "\tdata: " << std::visit(adc::var_string(), ck.data) <<std::endl; \
} else \
std::cerr << "ok " << std::visit(adc::var_string(), ck.data) << std::endl
return string for printing from variant v.
Definition types.hpp:195
@ k_value
Definition types.hpp:109

Definition at line 50 of file testBuilder.cpp.

◆ ROUNDTRIP_ARRAY_STRING

#define ROUNDTRIP_ARRAY_STRING (   NAME,
  VAL,
  COUNT,
  CTYPE_VAL 
)    roundtrip_array_string<CTYPE_VAL>(NAME, VAL, COUNT, b)

Definition at line 75 of file testBuilder.cpp.

◆ ROUNDTRIP_ARRAY

#define ROUNDTRIP_ARRAY (   NAME,
  VAL,
  COUNT,
  CTYPE,
  CPTYPE 
)    roundtrip_array<CTYPE>(NAME, VAL, adc:: CPTYPE, COUNT, b)

Definition at line 113 of file testBuilder.cpp.

◆ ROUNDTRIP_STRING

#define ROUNDTRIP_STRING (   NAME,
  VAL,
  CPTYPE 
)    roundtrip_string(NAME, VAL, adc:: CPTYPE, b)

Definition at line 185 of file testBuilder.cpp.

Function Documentation

◆ test_publisher()

int test_publisher ( std::shared_ptr< adc::publisher_api pi,
std::shared_ptr< adc::builder_api b 
)

Definition at line 22 of file testBuilder.cpp.

◆ roundtrip_array()

template<typename CTYPE >
void roundtrip_array ( const char *  name,
CTYPE *  val,
adc::scalar_type  cptype,
size_t  count,
std::shared_ptr< adc::builder_api b 
)

Definition at line 115 of file testBuilder.cpp.

◆ roundtrip_string()

void roundtrip_string ( const char *  name,
const char *  val,
adc::scalar_type  cptype,
std::shared_ptr< adc::builder_api b 
)

Definition at line 145 of file testBuilder.cpp.

◆ populate_builder()

void populate_builder ( std::shared_ptr< adc::builder_api b,
adc::factory f 
)

Definition at line 189 of file testBuilder.cpp.

◆ main()

int main ( int  ,
char **   
)

Definition at line 389 of file testBuilder.cpp.

Variable Documentation

◆ adc_plugin_file_config

std::map<std::string, std::string> adc_plugin_file_config
Initial value:
=
{{ "ADC_FILE_PLUGIN_DIRECTORY", "./test.outputs"},
{ "ADC_FILE_PLUGIN_FILE", "out.file.log" },
{ "ADC_FILE_PLUGIN_APPEND", "true" }
}

Definition at line 9 of file testBuilder.cpp.

◆ file_config

std::map<std::string, std::string> file_config
Initial value:
=
{{ "DIRECTORY", "./test.outputs"},
{ "FILE", "out.file.log" },
{ "APPEND", "true" }
}

Definition at line 15 of file testBuilder.cpp.