Program Listing for File config_register.hpp
↰ Return to documentation for file (config/config_register.hpp)
#ifndef FELIX_REGISTER_CONFIG_H_
#define FELIX_REGISTER_CONFIG_H_
#include <cstdint>
#include <vector>
#include <string>
#include <map>
#include "config.hpp"
#include "docopt/docopt.h"
struct RegisterDeviceConfig
{
int dev_no{0};
int did{0};
int cid{0};
int port_cmd{-1};
int port_reply{-1};
uint64_t fid_cmd{0};
uint64_t fid_reply{0};
};
class ConfigRegister
{
public:
std::string local_ip{"127.0.0.1"};
std::string bus_dir{"./bus"};
std::string bus_group{"FELIX"};
bool verbose{false};
bool verbose_bus{false};
bool enable_cmd{true};
bool enable_reply{true};
bool enable_mon{true};
int port_mon{-1};
uint64_t fid_mon{0};
unsigned int mon_interval{5};
std::string extra_mon{""};
std::vector<RegisterDeviceConfig> dconfs;
EventLoopType evloop_type{EventLoopType::netio_next};
void parse(int argc, char **argv);
private:
std::string usage();
std::string options();
std::string bugs();
};
#endif /* FELIX_REGISTER_CONFIG_H_ */