Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-11 08:25:22

0001 # ==========================================================================
0002 #  AIDA Detector description implementation
0003 # --------------------------------------------------------------------------
0004 # Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
0005 # All rights reserved.
0006 #
0007 # For the licensing terms see $DD4hepINSTALL/LICENSE.
0008 # For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
0009 #
0010 # ==========================================================================
0011 
0012 
0013 def run():
0014   import DigiTest
0015   digi = DigiTest.Test(geometry=None)
0016   digi.load_geo()
0017   input_action = digi.input_action('DigiParallelActionSequence/READER')
0018   # ========================================================================
0019   digi.info('Created SIGNAL input')
0020   signal = input_action.adopt_action('DigiDDG4ROOT/SignalReader',
0021                                      mask=0x0,
0022                                      input=[digi.next_input()])
0023   digi.check_creation([signal])
0024   # ========================================================================
0025   event = digi.event_action('DigiSequentialActionSequence/EventAction')
0026   split_action = event.adopt_action('DigiContainerSequenceAction/SplitSequence',
0027                                     parallel=True,
0028                                     input_mask=0x0,
0029                                     input_segment='inputs',
0030                                     output_segment='deposits',
0031                                     output_mask=0xFEED)
0032   splitter = digi.create_action('DigiSegmentSplitter/Splitter',
0033                                 parallel=True,
0034                                 split_by='module',
0035                                 detector='Minitel1')
0036   printer = digi.create_action('DigiSegmentDepositPrint/P1')
0037   splitter.get().adopt_segment_processor(printer, 1)
0038   printer = digi.create_action('DigiSegmentDepositPrint/P2')
0039   splitter.adopt_segment_processor(printer, [2, 3, 4, 5, 6])
0040   printer = digi.create_action('DigiSegmentDepositPrint/P3')
0041   splitter.adopt_segment_processor(printer, [7, 8, 9])
0042   split_action.adopt_container_processor(splitter, splitter.collection_names())
0043 
0044   event.adopt_action('DigiStoreDump/StoreDump')
0045   digi.info('Created event.dump')
0046   # ========================================================================
0047   digi.run_checked(num_events=5, num_threads=10, parallel=3)
0048 
0049 
0050 if __name__ == '__main__':
0051   run()