![]() |
Project
|
#include "O2SimDevice.h"#include "SimSetup/SimSetup.h"#include <SimConfig/SimConfig.h>#include <Steer/O2MCApplication.h>#include <TVirtualMC.h>#include <thread>#include <fairmq/DeviceRunner.h>#include <boost/program_options.hpp>#include <memory>#include <string>#include <fairmq/Channel.h>#include <mutex>#include <vector>#include <fairlogger/Logger.h>#include <fairmq/Parts.h>#include <fairmq/TransportFactory.h>#include <TStopwatch.h>#include <sys/wait.h>#include <pthread.h>#include <cmath>#include <csignal>#include <unistd.h>#include "SimPublishChannelHelper.h"#include "DetectorsBase/MTWorkerHooks.h"#include <SimulationDataFormat/PrimaryChunk.h>#include <TROOT.h>#include <atomic>#include "rapidjson/document.h"#include "rapidjson/stringbuffer.h"#include "rapidjson/filereadstream.h"#include <SimSetup/StaticTLSReserve.h>Go to the source code of this file.
Classes | |
| struct | KernelSetup |
| struct | MTChannels |
Functions | |
| void | sigaction_handler (int signal, siginfo_t *signal_info, void *) |
| void | addCustomOptions (bpo::options_description &options) |
| void | CustomCleanup (void *data, void *hint) |
| bool | initializeSim (std::string transport, std::string address, std::unique_ptr< FairRunSim > &simptr) |
| o2::devices::O2SimDevice * | getDevice () |
| fair::mq::Device * | getDevice (const fair::mq::ProgOptions &config) |
| int | initAndRunDevice (int argc, char *argv[]) |
| KernelSetup | initSim (std::string transport, std::string primaddress, std::string primstatusaddress, std::string mergeraddress, int workerID) |
| int | runSim (KernelSetup setup) |
| void | pinToCPU (unsigned int cpuid) |
| bool | waitForControlInput (int workerID) |
| fair::mq::Channel * | makeWorkerChannel (std::unique_ptr< fair::mq::Channel > &owner, char const *name, char const *type, std::string const &address) |
| void | closeMTChannels () |
| void | installMTWorkerHooks (std::string const &serveraddress, std::string const &mergeraddress) |
| void | runMT (std::string const &serveraddress, std::string const &mergeraddress, fair::mq::Channel &pubchannel) |
| int | main (int argc, char *argv[]) |
Variables | |
| std::vector< int > | gChildProcesses |
| int | gMasterProcess = -1 |
| int | gDriverProcess = -1 |
| std::atomic< bool > | gServerDone {false} |
| std::atomic< int > | gNextWorkerID {0} |
| std::atomic< int > | gChunkRequests {0} |
| MTChannels | gMTChannels |
| void addCustomOptions | ( | bpo::options_description & | options | ) |
Definition at line 94 of file O2SimDeviceRunner.cxx.
| void closeMTChannels | ( | ) |
Definition at line 302 of file O2SimDeviceRunner.cxx.
Definition at line 98 of file O2SimDeviceRunner.cxx.
| o2::devices::O2SimDevice * getDevice | ( | ) |
Definition at line 113 of file O2SimDeviceRunner.cxx.
| fair::mq::Device * getDevice | ( | const fair::mq::ProgOptions & | config | ) |
Definition at line 124 of file O2SimDeviceRunner.cxx.
| int initAndRunDevice | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 129 of file O2SimDeviceRunner.cxx.
| bool initializeSim | ( | std::string | transport, |
| std::string | address, | ||
| std::unique_ptr< FairRunSim > & | simptr | ||
| ) |
Definition at line 102 of file O2SimDeviceRunner.cxx.
| KernelSetup initSim | ( | std::string | transport, |
| std::string | primaddress, | ||
| std::string | primstatusaddress, | ||
| std::string | mergeraddress, | ||
| int | workerID | ||
| ) |
Definition at line 167 of file O2SimDeviceRunner.cxx.
| void installMTWorkerHooks | ( | std::string const & | serveraddress, |
| std::string const & | mergeraddress | ||
| ) |
Definition at line 313 of file O2SimDeviceRunner.cxx.
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 402 of file O2SimDeviceRunner.cxx.
| fair::mq::Channel * makeWorkerChannel | ( | std::unique_ptr< fair::mq::Channel > & | owner, |
| char const * | name, | ||
| char const * | type, | ||
| std::string const & | address | ||
| ) |
Definition at line 291 of file O2SimDeviceRunner.cxx.
| void pinToCPU | ( | unsigned int | cpuid | ) |
Definition at line 201 of file O2SimDeviceRunner.cxx.
| void runMT | ( | std::string const & | serveraddress, |
| std::string const & | mergeraddress, | ||
| fair::mq::Channel & | pubchannel | ||
| ) |
Definition at line 350 of file O2SimDeviceRunner.cxx.
| int runSim | ( | KernelSetup | setup | ) |
Definition at line 191 of file O2SimDeviceRunner.cxx.
Definition at line 56 of file O2SimDeviceRunner.cxx.
| bool waitForControlInput | ( | int | workerID | ) |
Definition at line 238 of file O2SimDeviceRunner.cxx.
| std::vector<int> gChildProcesses |
Definition at line 51 of file O2SimDeviceRunner.cxx.
| std::atomic<int> gChunkRequests {0} |
Definition at line 279 of file O2SimDeviceRunner.cxx.
| int gDriverProcess = -1 |
Definition at line 53 of file O2SimDeviceRunner.cxx.
| int gMasterProcess = -1 |
Definition at line 52 of file O2SimDeviceRunner.cxx.
| MTChannels gMTChannels |
Definition at line 289 of file O2SimDeviceRunner.cxx.
| std::atomic<int> gNextWorkerID {0} |
Definition at line 278 of file O2SimDeviceRunner.cxx.
Definition at line 277 of file O2SimDeviceRunner.cxx.