Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/ChargeExchangeMC/src/CexmcMessenger.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /examples/advanced/ChargeExchangeMC/src/CexmcMessenger.cc (Version 11.3.0) and /examples/advanced/ChargeExchangeMC/src/CexmcMessenger.cc (Version 9.6.p3)


  1 //                                                  1 //
  2 // *******************************************      2 // ********************************************************************
  3 // * License and Disclaimer                         3 // * License and Disclaimer                                           *
  4 // *                                                4 // *                                                                  *
  5 // * The  Geant4 software  is  copyright of th      5 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
  6 // * the Geant4 Collaboration.  It is provided      6 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
  7 // * conditions of the Geant4 Software License      7 // * conditions of the Geant4 Software License,  included in the file *
  8 // * LICENSE and available at  http://cern.ch/      8 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
  9 // * include a list of copyright holders.           9 // * include a list of copyright holders.                             *
 10 // *                                               10 // *                                                                  *
 11 // * Neither the authors of this software syst     11 // * Neither the authors of this software system, nor their employing *
 12 // * institutes,nor the agencies providing fin     12 // * institutes,nor the agencies providing financial support for this *
 13 // * work  make  any representation or  warran     13 // * work  make  any representation or  warranty, express or implied, *
 14 // * regarding  this  software system or assum     14 // * regarding  this  software system or assume any liability for its *
 15 // * use.  Please see the license in the file      15 // * use.  Please see the license in the file  LICENSE  and URL above *
 16 // * for the full disclaimer and the limitatio     16 // * for the full disclaimer and the limitation of liability.         *
 17 // *                                               17 // *                                                                  *
 18 // * This  code  implementation is the result      18 // * This  code  implementation is the result of  the  scientific and *
 19 // * technical work of the GEANT4 collaboratio     19 // * technical work of the GEANT4 collaboration.                      *
 20 // * By using,  copying,  modifying or  distri     20 // * By using,  copying,  modifying or  distributing the software (or *
 21 // * any work based  on the software)  you  ag     21 // * any work based  on the software)  you  agree  to acknowledge its *
 22 // * use  in  resulting  scientific  publicati     22 // * use  in  resulting  scientific  publications,  and indicate your *
 23 // * acceptance of all terms of the Geant4 Sof     23 // * acceptance of all terms of the Geant4 Software license.          *
 24 // *******************************************     24 // ********************************************************************
 25 //                                                 25 //
 26 /*                                                 26 /*
 27  * ===========================================     27  * ============================================================================
 28  *                                                 28  *
 29  *       Filename:  CexmcMessenger.cc              29  *       Filename:  CexmcMessenger.cc
 30  *                                                 30  *
 31  *    Description:  common messenger stuff (di     31  *    Description:  common messenger stuff (directories etc.)
 32  *                                                 32  *
 33  *        Version:  1.0                            33  *        Version:  1.0
 34  *        Created:  15.11.2009 12:59:56            34  *        Created:  15.11.2009 12:59:56
 35  *       Revision:  none                           35  *       Revision:  none
 36  *       Compiler:  gcc                            36  *       Compiler:  gcc
 37  *                                                 37  *
 38  *         Author:  Alexey Radkov (),              38  *         Author:  Alexey Radkov (), 
 39  *        Company:  PNPI                           39  *        Company:  PNPI
 40  *                                                 40  *
 41  * ===========================================     41  * ============================================================================
 42  */                                                42  */
 43                                                    43 
 44 #include <G4UIdirectory.hh>                        44 #include <G4UIdirectory.hh>
 45 #include "CexmcMessenger.hh"                       45 #include "CexmcMessenger.hh"
 46 #include "CexmcSensitiveDetectorsAttributes.hh     46 #include "CexmcSensitiveDetectorsAttributes.hh"
 47                                                    47 
 48                                                    48 
 49 namespace                                          49 namespace
 50 {                                                  50 {
 51     const G4String  ed( CexmcDetectorTypeName[     51     const G4String  ed( CexmcDetectorTypeName[ CexmcEDDetector ] + "/" );
 52 }                                                  52 }
 53                                                    53 
 54                                                    54 
 55 CexmcMessenger *  CexmcMessenger::instance( NU     55 CexmcMessenger *  CexmcMessenger::instance( NULL );
 56                                                    56 
 57 G4String  CexmcMessenger::mainDirName( "/cexmc     57 G4String  CexmcMessenger::mainDirName( "/cexmc/" );
 58 G4String  CexmcMessenger::geometryDirName( Cex     58 G4String  CexmcMessenger::geometryDirName( CexmcMessenger::mainDirName +
 59                                            "ge     59                                            "geometry/" );
 60 G4String  CexmcMessenger::physicsDirName( Cexm     60 G4String  CexmcMessenger::physicsDirName( CexmcMessenger::mainDirName +
 61                                            "ph     61                                            "physics/" );
 62 G4String  CexmcMessenger::gunDirName( CexmcMes     62 G4String  CexmcMessenger::gunDirName( CexmcMessenger::mainDirName +
 63                                            "gu     63                                            "gun/" );
 64 G4String  CexmcMessenger::detectorDirName( Cex     64 G4String  CexmcMessenger::detectorDirName( CexmcMessenger::mainDirName +
 65                                            "de     65                                            "detector/" );
 66 G4String  CexmcMessenger::eventDirName( CexmcM     66 G4String  CexmcMessenger::eventDirName( CexmcMessenger::mainDirName +
 67                                            "ev     67                                            "event/" );
 68 G4String  CexmcMessenger::runDirName( CexmcMes     68 G4String  CexmcMessenger::runDirName( CexmcMessenger::mainDirName +
 69                                            "ru     69                                            "run/" );
 70 G4String  CexmcMessenger::monitorDirName( Cexm     70 G4String  CexmcMessenger::monitorDirName( CexmcMessenger::detectorDirName +
 71                CexmcDetectorRoleName[ CexmcMon     71                CexmcDetectorRoleName[ CexmcMonitorDetectorRole ] + "/" );
 72 G4String  CexmcMessenger::targetDirName( Cexmc     72 G4String  CexmcMessenger::targetDirName( CexmcMessenger::detectorDirName +
 73                CexmcDetectorRoleName[ CexmcTar     73                CexmcDetectorRoleName[ CexmcTargetDetectorRole ] + "/" );
 74 G4String  CexmcMessenger::vetoCounterDirName(      74 G4String  CexmcMessenger::vetoCounterDirName( CexmcMessenger::detectorDirName +
 75                CexmcDetectorRoleName[ CexmcVet     75                CexmcDetectorRoleName[ CexmcVetoCounterDetectorRole ] + "/" );
 76 G4String  CexmcMessenger::vetoCounterLeftDirNa     76 G4String  CexmcMessenger::vetoCounterLeftDirName(
 77                             CexmcMessenger::ve     77                             CexmcMessenger::vetoCounterDirName + "left/" );
 78 G4String  CexmcMessenger::vetoCounterRightDirN     78 G4String  CexmcMessenger::vetoCounterRightDirName(
 79                             CexmcMessenger::ve     79                             CexmcMessenger::vetoCounterDirName + "right/" );
 80 G4String  CexmcMessenger::calorimeterDirName(      80 G4String  CexmcMessenger::calorimeterDirName( CexmcMessenger::detectorDirName +
 81                CexmcDetectorRoleName[ CexmcCal     81                CexmcDetectorRoleName[ CexmcCalorimeterDetectorRole ] + "/" );
 82 G4String  CexmcMessenger::calorimeterLeftDirNa     82 G4String  CexmcMessenger::calorimeterLeftDirName(
 83                             CexmcMessenger::ca     83                             CexmcMessenger::calorimeterDirName + "left/" );
 84 G4String  CexmcMessenger::calorimeterRightDirN     84 G4String  CexmcMessenger::calorimeterRightDirName(
 85                             CexmcMessenger::ca     85                             CexmcMessenger::calorimeterDirName + "right/" );
 86 G4String  CexmcMessenger::monitorEDDirName(        86 G4String  CexmcMessenger::monitorEDDirName(
 87                             CexmcMessenger::mo     87                             CexmcMessenger::monitorDirName + ed );
 88 G4String  CexmcMessenger::vetoCounterEDDirName     88 G4String  CexmcMessenger::vetoCounterEDDirName(
 89                             CexmcMessenger::ve     89                             CexmcMessenger::vetoCounterDirName + ed );
 90 G4String  CexmcMessenger::vetoCounterLeftEDDir     90 G4String  CexmcMessenger::vetoCounterLeftEDDirName(
 91                             CexmcMessenger::ve     91                             CexmcMessenger::vetoCounterLeftDirName + ed );
 92 G4String  CexmcMessenger::vetoCounterRightEDDi     92 G4String  CexmcMessenger::vetoCounterRightEDDirName(
 93                             CexmcMessenger::ve     93                             CexmcMessenger::vetoCounterRightDirName + ed );
 94 G4String  CexmcMessenger::calorimeterEDDirName     94 G4String  CexmcMessenger::calorimeterEDDirName(
 95                             CexmcMessenger::ca     95                             CexmcMessenger::calorimeterDirName + ed );
 96 G4String  CexmcMessenger::calorimeterLeftEDDir     96 G4String  CexmcMessenger::calorimeterLeftEDDirName(
 97                             CexmcMessenger::ca     97                             CexmcMessenger::calorimeterLeftDirName + ed );
 98 G4String  CexmcMessenger::calorimeterRightEDDi     98 G4String  CexmcMessenger::calorimeterRightEDDirName(
 99                             CexmcMessenger::ca     99                             CexmcMessenger::calorimeterRightDirName + ed );
100 G4String  CexmcMessenger::reconstructorDirName    100 G4String  CexmcMessenger::reconstructorDirName(
101                             CexmcMessenger::ma    101                             CexmcMessenger::mainDirName + "reconstructor/" );
102 G4String  CexmcMessenger::visDirName( CexmcMes    102 G4String  CexmcMessenger::visDirName( CexmcMessenger::mainDirName + "vis/" );
103 #ifdef CEXMC_USE_ROOT                             103 #ifdef CEXMC_USE_ROOT
104 G4String  CexmcMessenger::histoDirName(           104 G4String  CexmcMessenger::histoDirName(
105                             CexmcMessenger::ma    105                             CexmcMessenger::mainDirName + "histo/" );
106 #endif                                            106 #endif
107                                                   107 
108                                                   108 
109 CexmcMessenger *  CexmcMessenger::Instance( vo    109 CexmcMessenger *  CexmcMessenger::Instance( void )
110 {                                                 110 {
111     if ( instance == NULL )                       111     if ( instance == NULL )
112         instance = new CexmcMessenger;            112         instance = new CexmcMessenger;
113                                                   113 
114     return instance;                              114     return instance;
115 }                                                 115 }
116                                                   116 
117                                                   117 
118 void  CexmcMessenger::Destroy( void )             118 void  CexmcMessenger::Destroy( void )
119 {                                                 119 {
120     delete instance;                              120     delete instance;
121     instance = NULL;                              121     instance = NULL;
122 }                                                 122 }
123                                                   123 
124                                                   124 
125 CexmcMessenger::CexmcMessenger() : mainDir( NU    125 CexmcMessenger::CexmcMessenger() : mainDir( NULL ), geometryDir( NULL ),
126     physicsDir( NULL ), gunDir( NULL ), detect    126     physicsDir( NULL ), gunDir( NULL ), detectorDir( NULL ), eventDir( NULL ),
127     runDir( NULL ), monitorDir( NULL ), target    127     runDir( NULL ), monitorDir( NULL ), targetDir( NULL ),
128     vetoCounterDir( NULL ), vetoCounterLeftDir    128     vetoCounterDir( NULL ), vetoCounterLeftDir( NULL ),
129     vetoCounterRightDir( NULL ), calorimeterDi    129     vetoCounterRightDir( NULL ), calorimeterDir( NULL ),
130     calorimeterLeftDir( NULL ), calorimeterRig    130     calorimeterLeftDir( NULL ), calorimeterRightDir( NULL ),
131     monitorEDDir( NULL ), vetoCounterEDDir( NU    131     monitorEDDir( NULL ), vetoCounterEDDir( NULL ),
132     vetoCounterLeftEDDir( NULL ), vetoCounterR    132     vetoCounterLeftEDDir( NULL ), vetoCounterRightEDDir( NULL ),
133     calorimeterEDDir( NULL ), calorimeterLeftE    133     calorimeterEDDir( NULL ), calorimeterLeftEDDir( NULL ),
134     calorimeterRightEDDir( NULL ), reconstruct    134     calorimeterRightEDDir( NULL ), reconstructorDir( NULL ), visDir( NULL )
135 #ifdef CEXMC_USE_ROOT                             135 #ifdef CEXMC_USE_ROOT
136     ,histoDir( NULL )                             136     ,histoDir( NULL )
137 #endif                                            137 #endif
138 {                                                 138 {
139     mainDir = new G4UIdirectory( mainDirName )    139     mainDir = new G4UIdirectory( mainDirName );
140     mainDir->SetGuidance( "Cexmc settings." );    140     mainDir->SetGuidance( "Cexmc settings." );
141     geometryDir = new G4UIdirectory( geometryD    141     geometryDir = new G4UIdirectory( geometryDirName );
142     geometryDir->SetGuidance( "Geometry settin    142     geometryDir->SetGuidance( "Geometry settings (gdml file etc.)" );
143     physicsDir = new G4UIdirectory( physicsDir    143     physicsDir = new G4UIdirectory( physicsDirName );
144     physicsDir->SetGuidance( "Physics related     144     physicsDir->SetGuidance( "Physics related settings "
145                              "(production mode    145                              "(production model etc.)" );
146     gunDir = new G4UIdirectory( gunDirName );     146     gunDir = new G4UIdirectory( gunDirName );
147     gunDir->SetGuidance( "Gun settings (differ    147     gunDir->SetGuidance( "Gun settings (different FWHMs etc.)" );
148     detectorDir = new G4UIdirectory( detectorD    148     detectorDir = new G4UIdirectory( detectorDirName );
149     detectorDir->SetGuidance( "Sensitive detec    149     detectorDir->SetGuidance( "Sensitive detectors settings" );
150     eventDir = new G4UIdirectory( eventDirName    150     eventDir = new G4UIdirectory( eventDirName );
151     eventDir->SetGuidance( "Event settings (ve    151     eventDir->SetGuidance( "Event settings (verbose level etc.)" );
152     runDir = new G4UIdirectory( runDirName );     152     runDir = new G4UIdirectory( runDirName );
153     runDir->SetGuidance( "Run settings (geomet    153     runDir->SetGuidance( "Run settings (geometry file etc.)" );
154     monitorDir = new G4UIdirectory( monitorDir    154     monitorDir = new G4UIdirectory( monitorDirName );
155     monitorDir->SetGuidance( "Various settings    155     monitorDir->SetGuidance( "Various settings for the monitor." );
156     targetDir = new G4UIdirectory( targetDirNa    156     targetDir = new G4UIdirectory( targetDirName );
157     targetDir->SetGuidance( "Various settings     157     targetDir->SetGuidance( "Various settings for the target." );
158     vetoCounterDir = new G4UIdirectory( vetoCo    158     vetoCounterDir = new G4UIdirectory( vetoCounterDirName );
159     vetoCounterDir->SetGuidance( "Various sett    159     vetoCounterDir->SetGuidance( "Various settings for the veto counters." );
160     vetoCounterLeftDir = new G4UIdirectory( ve    160     vetoCounterLeftDir = new G4UIdirectory( vetoCounterLeftDirName );
161     vetoCounterLeftDir->SetGuidance(              161     vetoCounterLeftDir->SetGuidance(
162             "\n    Various settings for the le    162             "\n    Various settings for the left veto counter." );
163     vetoCounterRightDir = new G4UIdirectory( v    163     vetoCounterRightDir = new G4UIdirectory( vetoCounterRightDirName );
164     vetoCounterRightDir->SetGuidance(             164     vetoCounterRightDir->SetGuidance(
165             "\n    Various settings for the ri    165             "\n    Various settings for the right veto counter." );
166     calorimeterDir = new G4UIdirectory( calori    166     calorimeterDir = new G4UIdirectory( calorimeterDirName );
167     calorimeterDir->SetGuidance( "Various sett    167     calorimeterDir->SetGuidance( "Various settings for the calorimeters." );
168     calorimeterLeftDir = new G4UIdirectory( ca    168     calorimeterLeftDir = new G4UIdirectory( calorimeterLeftDirName );
169     calorimeterLeftDir->SetGuidance(              169     calorimeterLeftDir->SetGuidance(
170             "\n    Various settings for the le    170             "\n    Various settings for the left calorimeter." );
171     calorimeterRightDir = new G4UIdirectory( c    171     calorimeterRightDir = new G4UIdirectory( calorimeterRightDirName );
172     calorimeterRightDir->SetGuidance(             172     calorimeterRightDir->SetGuidance(
173             "\n    Various settings for the ri    173             "\n    Various settings for the right calorimeter." );
174     monitorEDDir = new G4UIdirectory( monitorE    174     monitorEDDir = new G4UIdirectory( monitorEDDirName );
175     monitorEDDir->SetGuidance(                    175     monitorEDDir->SetGuidance(
176             "\n    Energy deposit settings in     176             "\n    Energy deposit settings in the monitor (thresholds etc.)" );
177     vetoCounterEDDir = new G4UIdirectory( veto    177     vetoCounterEDDir = new G4UIdirectory( vetoCounterEDDirName );
178     vetoCounterEDDir->SetGuidance(                178     vetoCounterEDDir->SetGuidance(
179             "\n    Energy deposit settings in     179             "\n    Energy deposit settings in both veto counters "
180             "(thresholds etc.)" );                180             "(thresholds etc.)" );
181     vetoCounterLeftEDDir = new G4UIdirectory(     181     vetoCounterLeftEDDir = new G4UIdirectory( vetoCounterLeftEDDirName );
182     vetoCounterLeftEDDir->SetGuidance(            182     vetoCounterLeftEDDir->SetGuidance(
183             "\n    Energy deposit settings in     183             "\n    Energy deposit settings in the left veto counter "
184             "(thresholds etc.)" );                184             "(thresholds etc.)" );
185     vetoCounterRightEDDir = new G4UIdirectory(    185     vetoCounterRightEDDir = new G4UIdirectory( vetoCounterRightEDDirName );
186     vetoCounterRightEDDir->SetGuidance(           186     vetoCounterRightEDDir->SetGuidance(
187             "\n    Energy deposit settings in     187             "\n    Energy deposit settings in the right veto counter "
188             "(thresholds etc.)" );                188             "(thresholds etc.)" );
189     calorimeterEDDir = new G4UIdirectory( calo    189     calorimeterEDDir = new G4UIdirectory( calorimeterEDDirName );
190     calorimeterEDDir->SetGuidance(                190     calorimeterEDDir->SetGuidance(
191             "\n    Energy deposit settings in     191             "\n    Energy deposit settings in both calorimeters "
192             "(thresholds etc.)" );                192             "(thresholds etc.)" );
193     calorimeterLeftEDDir = new G4UIdirectory(     193     calorimeterLeftEDDir = new G4UIdirectory( calorimeterLeftEDDirName );
194     calorimeterLeftEDDir->SetGuidance(            194     calorimeterLeftEDDir->SetGuidance(
195             "\n    Energy deposit settings in     195             "\n    Energy deposit settings in the left calorimeter "
196             "(thresholds etc.)" );                196             "(thresholds etc.)" );
197     calorimeterRightEDDir = new G4UIdirectory(    197     calorimeterRightEDDir = new G4UIdirectory( calorimeterRightEDDirName );
198     calorimeterRightEDDir->SetGuidance(           198     calorimeterRightEDDir->SetGuidance(
199             "\n    Energy deposit settings in     199             "\n    Energy deposit settings in the right calorimeter "
200             "(thresholds etc.)" );                200             "(thresholds etc.)" );
201     reconstructorDir = new G4UIdirectory( reco    201     reconstructorDir = new G4UIdirectory( reconstructorDirName );
202     reconstructorDir->SetGuidance( "Reconstruc    202     reconstructorDir->SetGuidance( "Reconstructor settings" );
203     visDir = new G4UIdirectory( visDirName );     203     visDir = new G4UIdirectory( visDirName );
204     visDir->SetGuidance( "Visualization settin    204     visDir->SetGuidance( "Visualization settings" );
205 #ifdef CEXMC_USE_ROOT                             205 #ifdef CEXMC_USE_ROOT
206     histoDir = new G4UIdirectory( histoDirName    206     histoDir = new G4UIdirectory( histoDirName );
207     histoDir->SetGuidance( "Commands to list a    207     histoDir->SetGuidance( "Commands to list and show histograms" );
208 #endif                                            208 #endif
209 }                                                 209 }
210                                                   210 
211                                                   211 
212 CexmcMessenger::~CexmcMessenger()                 212 CexmcMessenger::~CexmcMessenger()
213 {                                                 213 {
214     delete mainDir;                               214     delete mainDir;
215     delete geometryDir;                           215     delete geometryDir;
216     delete physicsDir;                            216     delete physicsDir;
217     delete gunDir;                                217     delete gunDir;
218     delete detectorDir;                           218     delete detectorDir;
219     delete eventDir;                              219     delete eventDir;
220     delete runDir;                                220     delete runDir;
221     delete monitorDir;                            221     delete monitorDir;
222     delete targetDir;                             222     delete targetDir;
223     delete vetoCounterDir;                        223     delete vetoCounterDir;
224     delete vetoCounterLeftDir;                    224     delete vetoCounterLeftDir;
225     delete vetoCounterRightDir;                   225     delete vetoCounterRightDir;
226     delete calorimeterDir;                        226     delete calorimeterDir;
227     delete calorimeterLeftDir;                    227     delete calorimeterLeftDir;
228     delete calorimeterRightDir;                   228     delete calorimeterRightDir;
229     delete monitorEDDir;                          229     delete monitorEDDir;
230     delete vetoCounterEDDir;                      230     delete vetoCounterEDDir;
231     delete vetoCounterLeftEDDir;                  231     delete vetoCounterLeftEDDir;
232     delete vetoCounterRightEDDir;                 232     delete vetoCounterRightEDDir;
233     delete calorimeterEDDir;                      233     delete calorimeterEDDir;
234     delete calorimeterLeftEDDir;                  234     delete calorimeterLeftEDDir;
235     delete calorimeterRightEDDir;                 235     delete calorimeterRightEDDir;
236     delete reconstructorDir;                      236     delete reconstructorDir;
237     delete visDir;                                237     delete visDir;
238 #ifdef CEXMC_USE_ROOT                             238 #ifdef CEXMC_USE_ROOT
239     delete histoDir;                              239     delete histoDir;
240 #endif                                            240 #endif
241 }                                                 241 }
242                                                   242 
243                                                   243