Commit in lcdd on MAIN
include/volumeExtendedSubscriber.hh+50added 1.1
       /LCDDParser.hh+5-11.5 -> 1.6
src/LCDDLibLoad.cc+2-21.23 -> 1.24
   /LCDDParser.cc+18-11.7 -> 1.8
   /volumeExtendedSubscriber.cc+16-491.28 -> 1.29
+91-53
1 added + 4 modified, total 5 files
JM: Fix for LCDD-77

lcdd/include
volumeExtendedSubscriber.hh added at 1.1
diff -N volumeExtendedSubscriber.hh
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ volumeExtendedSubscriber.hh	19 Jun 2007 23:55:04 -0000	1.1
@@ -0,0 +1,50 @@
+// $Header: /cvs/lcd/lcdd/include/volumeExtendedSubscriber.hh,v 1.1 2007/06/19 23:55:04 jeremy Exp $
+
+// GDML
+#include "Saxana/SAXSubscriber.h"
+#include "Saxana/SAXComponentFactory.h"
+
+#include "G4Processor/GDMLProcessor.h"
+
+#include "Schema/volume.h"
+#include "Schema/physvol.h"
+
+// LCDD
+#include "LCDDProcessor.hh"
+#include "IdManager.hh"
+#include "sensitive_detector.hh"
+#include "G4SensitiveDetector.hh"
+#include "RegionType.hh"
+#include "physvolidElem.hh"
+#include "VisType.hh"
+#include "limit.hh"
+#include "G4LimitSet.hh"
+#include "LimitSetType.hh"
+
+// G4
+#include "G4LogicalVolume.hh"
+#include "G4Region.hh"
+#include "G4VisAttributes.hh"
+
+// std
+#include <iostream>
+
+/**
+   @class volumeExtendedSubscriber
+   @brief SAX subscriber to handle extra LCDD tags on volume element.
+   @note  This is the major subscriber extension class for the LCDD package.
+*/
+class volumeExtendedSubscriber : virtual public SAXSubscriber
+{
+public:
+  virtual const SAXComponentObject* Build() const;
+
+public:
+  volumeExtendedSubscriber();
+
+  virtual ~volumeExtendedSubscriber();
+
+  virtual void Activate( const SAXObject* object);
+};
+
+//DECLARE_SUBSCRIBER_FACTORY(volumeExtendedSubscriber)

lcdd/include
LCDDParser.hh 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- LCDDParser.hh	6 Sep 2005 17:24:34 -0000	1.5
+++ LCDDParser.hh	19 Jun 2007 23:55:04 -0000	1.6
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/include/LCDDParser.hh,v 1.5 2005/09/06 17:24:34 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/include/LCDDParser.hh,v 1.6 2007/06/19 23:55:04 jeremy Exp $
 
 #ifndef LCDDParser_h
 #define LCDDParser_h 1
@@ -61,6 +61,10 @@
 
 private:
 
+  void addVolumeExtendedSubscriber();
+
+private:
+
   SAXProcessor m_sxp;
   ProcessingConfigurator m_config;
 

lcdd/src
LCDDLibLoad.cc 1.23 -> 1.24
diff -u -r1.23 -r1.24
--- LCDDLibLoad.cc	4 May 2006 20:48:45 -0000	1.23
+++ LCDDLibLoad.cc	19 Jun 2007 23:55:05 -0000	1.24
@@ -42,7 +42,7 @@
     LOAD_COMPONENT(rzbProcess);
     LOAD_COMPONENT(dipoleProcess);
     LOAD_COMPONENT(dipole_coeffProcess);
-
+ 
     // region
     LOAD_COMPONENT(regionProcess);
     LOAD_COMPONENT(regionrefProcess);
@@ -64,7 +64,7 @@
     LOAD_COMPONENT(headerSubscriber);
 
     // volume extended
-    LOAD_COMPONENT(volumeExtendedSubscriber);
+    //LOAD_COMPONENT(volumeExtendedSubscriber);
 
     // SDs
     LOAD_COMPONENT(calorimeterSubscriber);

lcdd/src
LCDDParser.cc 1.7 -> 1.8
diff -u -r1.7 -r1.8
--- LCDDParser.cc	9 May 2006 01:56:35 -0000	1.7
+++ LCDDParser.cc	19 Jun 2007 23:55:05 -0000	1.8
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/src/LCDDParser.cc,v 1.7 2006/05/09 01:56:35 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/LCDDParser.cc,v 1.8 2007/06/19 23:55:05 jeremy Exp $
 #include "LCDDParser.hh"
 
 // lcdd
@@ -77,6 +77,8 @@
 
   // load custom LCDD tag handlers
   LCDDLibLoad();
+
+  addVolumeExtendedSubscriber();	
 }
 
 void LCDDParser::initialize()
@@ -172,3 +174,18 @@
 
   return valid;
 }
+
+#include "Saxana/RCObjectHandle.h"
+#include "Saxana/SAXSubscriber.h"
+#include "Saxana/SAXSubscriberPool.h"
+
+#include "volumeExtendedSubscriber.hh"
+
+void LCDDParser::addVolumeExtendedSubscriber()
+{
+   RCObjectHandle<SAXSubscriber> obj; 
+   obj = new volumeExtendedSubscriber();
+   SAXSubscriberPool* pool = const_cast<SAXSubscriberPool*> ( m_sxp.GetSubscriberPool() );   
+   pool->AddSubscriber("volume",obj);
+}
+

lcdd/src
volumeExtendedSubscriber.cc 1.28 -> 1.29
diff -u -r1.28 -r1.29
--- volumeExtendedSubscriber.cc	30 Mar 2006 19:43:58 -0000	1.28
+++ volumeExtendedSubscriber.cc	19 Jun 2007 23:55:05 -0000	1.29
@@ -1,61 +1,29 @@
-// $Header: /cvs/lcd/lcdd/src/volumeExtendedSubscriber.cc,v 1.28 2006/03/30 19:43:58 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/volumeExtendedSubscriber.cc,v 1.29 2007/06/19 23:55:05 jeremy Exp $
 
-// GDML
-#include "Saxana/SAXSubscriber.h"
-#include "Saxana/SAXComponentFactory.h"
-
-#include "G4Processor/GDMLProcessor.h"
-
-#include "Schema/volume.h"
-#include "Schema/physvol.h"
-
-// LCDD
-#include "LCDDProcessor.hh"
-#include "IdManager.hh"
-#include "sensitive_detector.hh"
-#include "G4SensitiveDetector.hh"
-#include "RegionType.hh"
-#include "physvolidElem.hh"
-#include "VisType.hh"
-#include "limit.hh"
-#include "G4LimitSet.hh"
-#include "LimitSetType.hh"
-
-// G4
-#include "G4LogicalVolume.hh"
-#include "G4Region.hh"
-#include "G4VisAttributes.hh"
-
-// std
-#include <iostream>
+#include "volumeExtendedSubscriber.hh"
 
 /**
    @class volumeExtendedSubscriber
    @brief SAX subscriber to handle extra LCDD tags on volume element.
    @note  This is the major subscriber extension class for the LCDD package.
 */
-class volumeExtendedSubscriber : virtual public SAXSubscriber
+const SAXComponentObject* volumeExtendedSubscriber::Build() const
 {
-public:
-  virtual const SAXComponentObject* Build() const
-  {
-    return this;
-  }
-
-public:
-  volumeExtendedSubscriber()
-  {
-    Subscribe( "volume" );
-  }
+  return this;
+}
 
-  virtual ~volumeExtendedSubscriber()
-  {}
+volumeExtendedSubscriber::volumeExtendedSubscriber()
+{
+  Subscribe( "volume" );
+}
 
-  virtual void Activate( const SAXObject* object)
-  {
-    LCDDProcessor* proc = LCDDProcessor::instance();
+volumeExtendedSubscriber::~volumeExtendedSubscriber()
+{}
 
-    const volume* vobj = 0;
+void volumeExtendedSubscriber::Activate( const SAXObject* object)
+{
+  LCDDProcessor* proc = LCDDProcessor::instance();
+  const volume* vobj = 0;
     G4SensitiveDetector* g4sd = 0;
     G4LogicalVolume* lv;
     int nchildren = 0;
@@ -223,6 +191,5 @@
 
     //delete object;
   }
-};
 
-DECLARE_SUBSCRIBER_FACTORY(volumeExtendedSubscriber)
+//DECLARE_SUBSCRIBER_FACTORY(volumeExtendedSubscriber)
CVSspam 0.2.8