Hall-D Software
alpha
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
hddm_shlib.cc
Go to the documentation of this file.
1
// $id
2
//
3
// hddm_shlib.cc
4
//
5
/// This file provides is used to generated a shared library
6
/// that can handle a specific version of HDDM. It can be dynamically
7
/// loaded by an an existing executable using the --so= or
8
/// --sodir= command line switches.
9
///
10
/// THIS CAN BE DANGEROUS!!! The routines here assume a certain format
11
/// for the C++ classes which may not be consistent with the
12
/// format compiled into the executable. This is intended as a quick
13
/// solution to the problem of reading in older simulation files
14
/// with newer executables where changes to HDDM were made in between.
15
/// It can only be expected to work if the executable is looking
16
/// at a portion of the data where the C++ class definitions didn't
17
/// change.
18
///
19
/// This has not been thoroughly tested so your mileage may vary.
20
///
21
22
23
#include <iostream>
24
using namespace
std;
25
26
#include <JANA/JApplication.h>
27
#include <JANA/JEventLoop.h>
28
29
#include "HDDM/JEventSource_HDDM.h"
30
#include "BCAL/JFactory_DBCALHit.h"
31
#include "CDC/JFactory_DCDCHit.h"
32
#include "CHERENKOV/JFactory_DCHERENKOVHit.h"
33
#include "FCAL/JFactory_DFCALHit.h"
34
#include "FDC/JFactory_DFDCHit.h"
35
#include "TRACKING/JFactory_DMCTrackHit.h"
36
#include "TRACKING/JFactory_DMCThrown.h"
37
#include "TOF/JFactory_DTOFHit.h"
38
#include "UPV/JFactory_DUPVHit.h"
39
40
extern
"C"
{
41
extern
InitPlugin_t
InitPlugin
;
42
}
43
44
void
InitPlugin
(JApplication *app)
45
{
46
cout<<
"Adding factories from shared object ..."
<<endl;
47
eventLoop->AddFactory(
new
JFactory_DBCALHit());
48
eventLoop->AddFactory(
new
JFactory_DCDCHit());
49
eventLoop->AddFactory(
new
JFactory_DCHERENKOVHit());
50
eventLoop->AddFactory(
new
JFactory_DFCALHit());
51
eventLoop->AddFactory(
new
JFactory_DFDCHit());
52
eventLoop->AddFactory(
new
JFactory_DMCTrackHit());
53
eventLoop->AddFactory(
new
JFactory_DMCThrown());
54
eventLoop->AddFactory(
new
JFactory_DTOFHit());
55
eventLoop->AddFactory(
new
JFactory_DUPVHit());
56
}
InitPlugin
InitPlugin_t InitPlugin
libraries
HDDM
shlib
hddm_shlib.cc
Generated on Fri Jul 26 2019 14:01:55 for Hall-D Software by
1.8.5