30 SNB_CONNECTION_PREFIX="snbmodules",
32 SNB_TIMEOUT_RECEIVE=100,
36 Here the configuration for an entire daq_application instance using DAQModules from snbmodules is generated.
39 HOST2 = HOST.replace(
"-",
"")
40 INTERFACE=snbmodules.interface
41 CLIENT_NUM=snbmodules.client_num
42 CLIENT_NAME=snbmodules.client_name
43 CLIENT_STARTING_PORT=snbmodules.client_starting_port
44 CLIENTS_ROOT_DIR = snbmodules.clients_root_dir
49 for i
in range(CLIENT_NUM):
50 RESOLVED_INTERFACE = INTERFACE
51 if RESOLVED_INTERFACE ==
"0.0.0.0":
52 RESOLVED_INTERFACE = socket.gethostbyname(HOST)
54 if CLIENT_STARTING_PORT == 0:
55 client_ip = RESOLVED_INTERFACE
57 client_ip = RESOLVED_INTERFACE +
":" + str(CLIENT_STARTING_PORT + i)
59 modules += [DAQModule(name = HOST2+CLIENT_NAME + str(i),
60 plugin =
"SNBFileTransfer",
61 conf = snbfiletransfer.ConfParams(
62 client_ip = client_ip,
63 work_dir = CLIENTS_ROOT_DIR + HOST2 + CLIENT_NAME + str(i) +
"/",
64 connection_prefix = SNB_CONNECTION_PREFIX,
65 timeout_send = SNB_TIMEOUT_SEND,
66 timeout_receive = SNB_TIMEOUT_RECEIVE,
71 mgraph = ModuleGraph(modules)
73 for i
in range(CLIENT_NUM):
74 mgraph.add_endpoint(SNB_CONNECTION_PREFIX+
"_client_" + HOST2 + CLIENT_NAME + str(i) +
"_notifications", HOST2 + CLIENT_NAME + str(i) +
".notifications",
"notification_t", Direction.IN, check_endpoints=
False)
76 snbmodules_app = App(modulegraph = mgraph, host = HOST, name = HOST+CLIENT_NAME)
83 BOOKKEEPER_REFRESH_RATE=1,
84 BOOKKEEPER_NAME="bookkeeper",
85 BOOKKEEPER_LOG_PATH="./",
86 SNB_CONNECTION_PREFIX="snbmodules",
88 SNB_TIMEOUT_RECEIVE=100,
92 Here the configuration for an entire daq_application instance using DAQModules from snbmodules is generated.
97 if BOOKKEEPER_PORT == 0:
98 bookkeeper_ip = socket.gethostbyname(HOST)
100 bookkeeper_ip = socket.gethostbyname(HOST) +
":" + str(BOOKKEEPER_PORT)
102 HOST2 = HOST.replace(
"-",
"")
103 modules += [DAQModule(name = HOST2+BOOKKEEPER_NAME,
104 plugin =
"SNBTransferBookkeeper",
105 conf = snbtransferbookkeeper.ConfParams(
106 bookkeeper_ip = bookkeeper_ip,
107 bookkeeper_log_path = BOOKKEEPER_LOG_PATH,
108 refresh_rate = BOOKKEEPER_REFRESH_RATE,
109 connection_prefix = SNB_CONNECTION_PREFIX,
110 timeout_send = SNB_TIMEOUT_SEND,
111 timeout_receive = SNB_TIMEOUT_RECEIVE,
116 mgraph = ModuleGraph(modules)
118 mgraph.add_endpoint(SNB_CONNECTION_PREFIX +
"_bookkeeper_" + HOST2 + BOOKKEEPER_NAME+
"_notifications", HOST2 + BOOKKEEPER_NAME +
".notifications",
"notification_t", Direction.IN, check_endpoints=
False)
120 snbmodules_app = App(modulegraph = mgraph, host = HOST, name = HOST+BOOKKEEPER_NAME)
122 return snbmodules_app
get_snbmodules_bookkeeper_app(HOST, BOOKKEEPER_PORT=0, BOOKKEEPER_REFRESH_RATE=1, BOOKKEEPER_NAME="bookkeeper", BOOKKEEPER_LOG_PATH="./", SNB_CONNECTION_PREFIX="snbmodules", SNB_TIMEOUT_SEND=10, SNB_TIMEOUT_RECEIVE=100, DEBUG=False)