Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:14:03

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 // Author     : M.Frank
0011 //
0012 //==========================================================================
0013 //
0014 // Specialized generic detector plugin
0015 // 
0016 //==========================================================================
0017 // Framework include files
0018 namespace { struct UserData { /* int a,b,c; */ }; }
0019 #define SURFACEINSTALLER_DATA UserData
0020 #define DD4HEP_USE_SURFACEINSTALL_HELPER DD4hep_SurfaceExamplePlugin
0021 #include "DD4hep/SurfaceInstaller.h"
0022 
0023 namespace {
0024   template <> void Installer<UserData>::handle_arguments(int argc, char** argv)   {
0025     for(int i=0; i<argc; ++i)  {
0026       double value = -1;
0027       char* ptr = ::strchr(argv[i],'=');
0028       if ( ptr )  {
0029         value = dd4hep::_toDouble(++ptr);
0030       }
0031       std::cout << "SurfaceExamplePlugin: argument[" << i << "] = " << argv[i] 
0032                 << " value = " << value << std::endl;
0033     }
0034   }
0035 
0036   /// Install measurement surfaces
0037   template <>
0038   void Installer<UserData>::install(dd4hep::DetElement /* component */, dd4hep::PlacedVolume /* pv */)   {
0039     // Do here whatever is necessary ....
0040   }
0041 }