Reference

Common definitions

group CommonDefinitions

Typedefs

using RawDelimSizeType = uint32_t

Enums

enum class DataPrintMode : uint8_t

Values:

enumerator print_speed
enumerator print_header
enumerator print_raw
enumerator print_all

Variables

auto BYTE_BIT_LENGTH = 8
auto DEFAULT_SRS_IP = std::string_view{"10.0.0.2"}
auto DEFAULT_TIMEOUT_SECONDS = 2
auto WRITE_COMMAND_BITS = uint8_t{0xaa}
auto DEFAULT_TYPE_BITS = uint8_t{0xaa}
auto DEFAULT_CHANNEL_ADDRE = uint16_t{0xff}
auto COMMAND_LENGTH_BITS = uint16_t{0xffff}
auto ZERO_UINT16_PADDING = uint16_t{}
auto SMALL_READ_MSG_BUFFER_SIZE = 100
auto LARGE_READ_MSG_BUFFER_SIZE = 10000
auto DEFAULT_CMD_LENGTH = uint16_t{0xffff}
auto CMD_TYPE = uint8_t{0xaa}
auto WRITE_CMD = uint8_t{0xaa}
auto READ_CMD = uint8_t{0xbb}
auto I2C_ADDRESS = uint16_t{0x0042}
auto NULL_ADDRESS = uint16_t{0x000f}
auto INIT_COUNT_VALUE = uint32_t{0x80000000}
auto DEFAULT_STATUS_WAITING_TIME_SECONDS = std::chrono::seconds{5}
auto DEFAULT_SRS_CONTROL_PORT = 6600
auto FEC_DAQ_RECEIVE_PORT = 6006
static int FEC_CONTROL_LOCAL_PORT = 6007
auto DEFAULT_DISPLAY_PERIOD = std::chrono::milliseconds{200}
auto DEFAULT_ROOT_HTTP_SERVER_PERIOD = std::chrono::milliseconds{1000}
auto FEC_ID_BIT_LENGTH = 8
auto HIT_DATA_BIT_LENGTH = 48
auto SRS_TIMESTAMP_HIGH_BIT_LENGTH = 32
auto SRS_TIMESTAMP_LOW_BIT_LENGTH = 10
auto FLAG_BIT_POSITION = 15
auto GZIP_DEFAULT_COMPRESSION_LEVEL = 9
auto PROTOBUF_ENABLE_GZIP = true

Common functions

group CommonFunctions

Functions

template<std::size_t bit_size, std::size_t max, std::size_t min = 0>
std::bitset<max - min> subset(const std::bitset<bit_size> &bits)
template<std::size_t high_size, std::size_t low_size>
std::bitset<high_size + low_size> merge_bits(const std::bitset<high_size> &high_bits, const std::bitset<low_size> &low_bits)
template<std::size_t bit_size>
auto byte_swap(const std::bitset<bit_size> &bits)
template<typename T>
auto gray_to_binary(T gray_val)
auto get_shared_from_this(auto &&obj)
auto create_coro_future(auto &coro, auto &&pre_fut)
auto create_coro_future(auto &coro, bool is_terminated)
void coro_sync_start(auto &coro, auto&&... args)

Common aliases

group CommonAliases

Typedefs

using io_context_type = asio::thread_pool
using BufferElementType = char
using BinaryData = std::vector<BufferElementType>
template<int buffer_size = SMALL_READ_MSG_BUFFER_SIZE>
using ReadBufferType = std::array<BufferElementType, buffer_size>
using CommunicateEntryType = uint32_t