Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 09:57:59

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 #ifndef DD4HEP_ANY_H
0014 #define DD4HEP_ANY_H
0015 
0016 #if __cplusplus >= 201703L
0017 // C/C++ include files
0018 #include <any>
0019 /// Namespace for the AIDA detector description toolkit
0020 namespace dd4hep  {
0021   using std::any;
0022   using std::any_cast;
0023   using std::make_any;
0024 }
0025 
0026 #else
0027 
0028 #include <boost/any.hpp>
0029 /// Namespace for the AIDA detector description toolkit
0030 namespace dd4hep  {
0031 
0032   using boost::any;
0033   using boost::any_cast;
0034   /// Create an any holding a @c _Tp constructed from @c __args.
0035   template <typename T, typename... _Args>
0036     any make_any(_Args&&... __args)  {
0037       return any(T(std::forward<_Args>(__args)...));
0038     }
0039 }
0040 #endif
0041 
0042 #endif  // DD4HEP_ANY_H