From 153cf734f5d65e24f34a8663552ffaace0f5ba5d Mon Sep 17 00:00:00 2001 From: Markus Frank <markus.frank@cern.ch> Date: Thu, 19 Feb 2015 09:32:39 +0000 Subject: [PATCH] Set MAC OS specific macros for dictionary generation --- DDCore/include/DD4hep/Dictionary.h | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/DDCore/include/DD4hep/Dictionary.h b/DDCore/include/DD4hep/Dictionary.h index 80a978346..083e661f7 100644 --- a/DDCore/include/DD4hep/Dictionary.h +++ b/DDCore/include/DD4hep/Dictionary.h @@ -65,13 +65,14 @@ template class map< string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >; #pragma link C++ class DD4hep::Geometry::Handle<DD4hep::NamedObject>+; #pragma link C++ class pair<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >+; #pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >+; -//#pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::*+; #pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::iterator; -//#pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::const_iterator; -//#pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::reverse_iterator; +#pragma link C++ class map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::const_iterator; + +#ifdef R__MACOSX +// We only need these declarations for the clang compiler #pragma link C++ function operator==( const map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::iterator&,const map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::iterator& ); #pragma link C++ function operator!=( const map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::iterator&,const map<string, DD4hep::Geometry::Handle<DD4hep::NamedObject> >::iterator& ); - +#endif #pragma link C++ class DD4hep::ObjectExtensions+; template class DD4hep::Geometry::Handle<TNamed>; @@ -186,9 +187,12 @@ template class DD4hep::Geometry::Handle<TNamed>; #pragma link C++ class map<string,DD4hep::Geometry::DetElement>+; #pragma link C++ class map<string,DD4hep::Geometry::DetElement>::iterator; #pragma link C++ class map<string,DD4hep::Geometry::DetElement>::const_iterator; + +#ifdef R__MACOSX +// We only need these declarations for the clang compiler #pragma link C++ function operator==( const map<string, DD4hep::Geometry::DetElement >::iterator&,const map<string, DD4hep::Geometry::DetElement >::iterator& ); #pragma link C++ function operator!=( const map<string, DD4hep::Geometry::DetElement >::iterator&,const map<string, DD4hep::Geometry::DetElement >::iterator& ); - +#endif #pragma link C++ class DD4hep::Geometry::SensitiveDetector+; #pragma link C++ class DD4hep::Geometry::SensitiveDetectorObject+; @@ -282,15 +286,23 @@ template vector<pair<string, int> >::iterator; #pragma link C++ class map<string, string>+; #pragma link C++ class map<string, string>::iterator; #pragma link C++ class map<string, string>::const_iterator; + +#ifdef R__MACOSX +// We only need these declarations for the clang compiler #pragma link C++ function operator==( const map<string, string>::iterator&, const map<string, string>::iterator& ); #pragma link C++ function operator!=( const map<string, string>::iterator&, const map<string, string>::iterator& ); +#endif #pragma link C++ class pair<string, map<string, string> >+; #pragma link C++ class map<string, map<string, string> >+; #pragma link C++ class map<string, map<string,string>>::iterator; #pragma link C++ class map<string, map<string,string>>::const_iterator; + +#ifdef R__MACOSX +// We only need these declarations for the clang compiler #pragma link C++ function operator==( const map<string, map<string,string>>::iterator&, const map<string, map<string,string>>::iterator& ); #pragma link C++ function operator!=( const map<string, map<string,string>>::iterator&, const map<string, map<string,string>>::iterator& ); +#endif #pragma link C++ class DD4hep::Geometry::LCDD+; -- GitLab