Commit in lcdd on MAIN
include/lcdd/processes/FieldMapTypeProcess.hh+68added 1.1
                      /FieldTypeProcess.hh+76added 1.1
                      /SensitiveDetectorTypeProcess.hh+88added 1.1
                      /calorimeterProcess.hh+43added 1.1
include/lcdd/schema/FieldMapTypeProcess.hh-661.1 removed
                   /FieldTypeProcess.hh-741.1 removed
                   /SensitiveDetectorTypeProcess.hh-881.1 removed
                   /calorimeterProcess.hh-431.1 removed
src/lcdd/processes/authorProcess.cc+77added 1.1
                  /box_dipoleProcess.cc+74added 1.1
                  /calorimeterProcess.cc+48added 1.1
                  /cell_readout_2dProcess.cc+77added 1.1
                  /colorProcess.cc+80added 1.1
                  /commentProcess.cc+75added 1.1
                  /detectorProcess.cc+74added 1.1
                  /dipoleProcess.cc+77added 1.1
                  /dipole_coeffProcess.cc+74added 1.1
                  /field_map_3dProcess.cc+68added 1.1
                  /fieldrefProcess.cc+48added 1.1
                  /generatorProcess.cc+75added 1.1
                  /global_fieldProcess.cc+76added 1.1
                  /global_grid_xyProcess.cc+82added 1.1
                  /grid_xyzProcess.cc+83added 1.1
                  /headerProcess.cc+79added 1.1
                  /idspecProcess.cc+80added 1.1
                  /idspecrefProcess.cc+51added 1.1
                  /limitProcess.cc+77added 1.1
                  /limitrefProcess.cc+50added 1.1
                  /limitsetProcess.cc+83added 1.1
                  /limitsetrefProcess.cc+50added 1.1
                  /nonprojective_cylinderProcess.cc+80added 1.1
                  /optical_calorimeterProcess.cc+43added 1.1
                  /physvolidProcess.cc+69added 1.1
                  /projective_cylinderProcess.cc+79added 1.1
                  /projective_zplaneProcess.cc+80added 1.1
                  /regionProcess.cc+84added 1.1
                  /regionrefProcess.cc+49added 1.1
                  /rz_field_mapProcess.cc+77added 1.1
                  /rzbProcess.cc+80added 1.1
                  /scorerProcess.cc+71added 1.1
                  /sdrefProcess.cc+53added 1.1
                  /solenoidProcess.cc+77added 1.1
                  /trackerProcess.cc+65added 1.1
                  /unsegmented_calorimeterProcess.cc+35added 1.1
                  /visProcess.cc+84added 1.1
                  /visrefProcess.cc+49added 1.1
                  /volumeExtendedProcess.cc+85added 1.1
src/lcdd/schema/authorProcess.cc-771.1 removed
               /box_dipoleProcess.cc-741.1 removed
               /calorimeterProcess.cc-481.1 removed
               /cell_readout_2dProcess.cc-771.1 removed
               /colorProcess.cc-801.1 removed
               /commentProcess.cc-751.1 removed
               /detectorProcess.cc-741.1 removed
               /dipoleProcess.cc-771.1 removed
               /dipole_coeffProcess.cc-741.1 removed
               /field_map_3dProcess.cc-681.1 removed
               /fieldrefProcess.cc-481.1 removed
               /generatorProcess.cc-751.1 removed
               /global_fieldProcess.cc-761.1 removed
               /global_grid_xyProcess.cc-821.1 removed
               /grid_xyzProcess.cc-831.1 removed
               /headerProcess.cc-791.1 removed
               /idspecProcess.cc-801.1 removed
               /idspecrefProcess.cc-511.1 removed
               /limitProcess.cc-771.1 removed
               /limitrefProcess.cc-501.1 removed
               /limitsetProcess.cc-831.1 removed
               /limitsetrefProcess.cc-501.1 removed
               /nonprojective_cylinderProcess.cc-801.1 removed
               /optical_calorimeterProcess.cc-431.1 removed
               /physvolidProcess.cc-691.1 removed
               /projective_cylinderProcess.cc-791.1 removed
               /projective_zplaneProcess.cc-801.1 removed
               /regionProcess.cc-841.1 removed
               /regionrefProcess.cc-491.1 removed
               /rz_field_mapProcess.cc-771.1 removed
               /rzbProcess.cc-801.1 removed
               /scorerProcess.cc-711.1 removed
               /sdrefProcess.cc-531.1 removed
               /solenoidProcess.cc-771.1 removed
               /trackerProcess.cc-651.1 removed
               /unsegmented_calorimeterProcess.cc-351.1 removed
               /visProcess.cc-841.1 removed
               /visrefProcess.cc-491.1 removed
               /volumeExtendedProcess.cc-851.1 removed
+2993-2989
43 added + 43 removed, total 86 files
move SAX processing classes to separate subdir

lcdd/include/lcdd/processes
FieldMapTypeProcess.hh added at 1.1
diff -N FieldMapTypeProcess.hh
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ FieldMapTypeProcess.hh	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,68 @@
+// $Header: /cvs/lcd/lcdd/include/lcdd/processes/FieldMapTypeProcess.hh,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+#ifndef LCDD_FIELDMAPTYPEPROCESS_HH
+#define LCDD_FIELDMAPTYPEPROCESS_HH 1
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/FieldMapType.hh"
+#include "lcdd/schema/FieldType.hh"
+#include "lcdd/processes/FieldTypeProcess.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief Generic process for field maps.
+ * @note This class adds generic content using StackPopNotify.
+ */
+class FieldMapTypeProcess: public FieldTypeProcess
+{
+public:
+    FieldMapTypeProcess(const ProcessingContext* context = 0) :
+            FieldTypeProcess(context)
+    {
+    }
+
+    virtual ~FieldMapTypeProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    /* NO-OP.  Just call up the inheritance chain to FieldTypeProcess. */
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //    std::cout << "FieldMapTypeProcess::StartElement - " << name << std::endl;
+        FieldTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        //    std::cout << "FieldMapTypeProcess::StackPopNotify" << std::endl;
+        SAXObject** so = Context()->GetTopObject();
+        FieldMapType* fmap = dynamic_cast<FieldMapType*>(m_obj);
+        fmap->add_content(name, *so);
+    }
+};
+
+#endif

lcdd/include/lcdd/processes
FieldTypeProcess.hh added at 1.1
diff -N FieldTypeProcess.hh
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ FieldTypeProcess.hh	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,76 @@
+// $Header: /cvs/lcd/lcdd/include/lcdd/processes/FieldTypeProcess.hh,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+#ifndef LCDD_FIELDTYPEPROCESS_HH
+#define LCDD_FIELDTYPEPROCESS_HH 1
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/FieldType.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief Generic process for fields.
+ * @note This class sets name and units for a field.
+ */
+class FieldTypeProcess: public SAXStateProcess
+{
+public:
+    FieldTypeProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~FieldTypeProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "FieldTypeProcess::StartElement: " << name << std::endl;
+
+        FieldType* fld = dynamic_cast<FieldType*>(m_obj);
+
+        if (fld) {
+
+            fld->set_name(attrs.getValue("name"));
+            fld->set_funit(attrs.getValue("funit"));
+            fld->set_lunit(attrs.getValue("lunit"));
+
+            //std::cout << "name: " << fld->get_name() << std::endl;
+        } else {
+            std::cerr << "Failed cast to FieldType." << std::endl;
+        }
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+        //std::cout << "FieldTypeProcess::StackPopNotify" << std::endl;
+    }
+
+protected:
+    SAXObject* m_obj;
+};
+
+#endif

lcdd/include/lcdd/processes
SensitiveDetectorTypeProcess.hh added at 1.1
diff -N SensitiveDetectorTypeProcess.hh
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ SensitiveDetectorTypeProcess.hh	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,88 @@
+// $Header: /cvs/lcd/lcdd/include/lcdd/processes/SensitiveDetectorTypeProcess.hh,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+#ifndef LCDD_SENSITIVEDETECTORTYPEPROCESS_HH
+#define LCDD_SENSITIVEDETECTORTYPEPROCESS_HH 1
+
+// LCDD
+#include "lcdd/schema/SensitiveDetectorType.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// G4
+#include "globals.hh"
+
+// std
+#include <iostream>
+
+/**
+ @class SensitiveDetectorTypeProcess
+ @brief SAX process for elements based on abstract SensitiveDetectorType.
+ */
+class SensitiveDetectorTypeProcess: public SAXStateProcess
+{
+public:
+    SensitiveDetectorTypeProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~SensitiveDetectorTypeProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "SensitiveDetectorTypeProcess::StartElement: " << name << std::endl;
+
+        SensitiveDetectorType* sdt = dynamic_cast<SensitiveDetectorType*>(m_obj);
+
+        if (sdt) {
+            sdt->set_name(attrs.getValue("name"));
+            sdt->set_hitsCollectionName(attrs.getValue("hits_collection"));
+            sdt->set_ecut(attrs.getValue("ecut"));
+            sdt->set_eunit(attrs.getValue("eunit"));
+            sdt->set_verbose(attrs.getValue("verbose"));
+            sdt->set_endcap_flag(attrs.getValue("endcap_flag"));
+
+            // set the type str for factory build
+            sdt->set_type(name);
+        } else {
+            std::cerr << "SensitiveDetectorTypeProcess::StartElement - cast to SensitiveDetectorType failed!" << std::endl;
+        }
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SAXObject** so = Context()->GetTopObject();
+        SensitiveDetectorType* sdt = dynamic_cast<SensitiveDetectorType*>(m_obj);
+
+        // just push all content; could be idspecref or segmentation (for cal)
+        sdt->add_content(name, *so);
+    }
+
+protected:
+    SAXObject* m_obj;
+
+};
+
+#endif

lcdd/include/lcdd/processes
calorimeterProcess.hh added at 1.1
diff -N calorimeterProcess.hh
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ calorimeterProcess.hh	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,43 @@
+// $Header: /cvs/lcd/lcdd/include/lcdd/processes/calorimeterProcess.hh,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+#ifndef LCDD_CALORIMETERPROCESS_HH
+#define LCDD_CALORIMETERPROCESS_HH 1
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/calorimeter.hh"
+#include "lcdd/processes/SensitiveDetectorTypeProcess.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for calorimeter element.
+ * @note Calls SAX processor for SensitiveDetectorTypeProcess parent class.
+ */
+class calorimeterProcess: public SensitiveDetectorTypeProcess
+{
+public:
+    calorimeterProcess(const ProcessingContext* context = 0);
+
+    virtual ~calorimeterProcess();
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs);
+
+    virtual void EndElement(const std::string&);
+
+    virtual void Characters(const std::string&);
+
+    virtual void StackPopNotify(const std::string& name);
+
+    virtual const std::string& State() const;
+};
+
+#endif

lcdd/include/lcdd/schema
FieldMapTypeProcess.hh removed after 1.1
diff -N FieldMapTypeProcess.hh
--- FieldMapTypeProcess.hh	26 Jun 2013 01:32:46 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,66 +0,0 @@
-// $Header: /cvs/lcd/lcdd/include/lcdd/schema/Attic/FieldMapTypeProcess.hh,v 1.1 2013/06/26 01:32:46 jeremy Exp $
-
-#ifndef LCDD_FIELDMAPTYPEPROCESS_HH
-#define LCDD_FIELDMAPTYPEPROCESS_HH 1
-
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-#include "FieldType.hh"
-#include "FieldTypeProcess.hh"
-#include "FieldMapType.hh"
-
-#include <iostream>
-
-/**
- * @class FieldMapTypeProcess
- * @brief Generic process for field maps.
- * @note This class adds generic content using StackPopNotify.
- */
-class FieldMapTypeProcess: public FieldTypeProcess
-{
-public:
-    FieldMapTypeProcess(const ProcessingContext* context = 0) :
-            FieldTypeProcess(context)
-    {
-    }
-
-    virtual ~FieldMapTypeProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    /* NO-OP.  Just call up the inheritance chain to FieldTypeProcess. */
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //    std::cout << "FieldMapTypeProcess::StartElement - " << name << std::endl;
-        FieldTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        //    std::cout << "FieldMapTypeProcess::StackPopNotify" << std::endl;
-        SAXObject** so = Context()->GetTopObject();
-        FieldMapType* fmap = dynamic_cast<FieldMapType*>(m_obj);
-        fmap->add_content(name, *so);
-    }
-};
-
-#endif

lcdd/include/lcdd/schema
FieldTypeProcess.hh removed after 1.1
diff -N FieldTypeProcess.hh
--- FieldTypeProcess.hh	26 Jun 2013 01:32:46 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,74 +0,0 @@
-// $Header: /cvs/lcd/lcdd/include/lcdd/schema/Attic/FieldTypeProcess.hh,v 1.1 2013/06/26 01:32:46 jeremy Exp $
-#ifndef LCDD_FIELDTYPEPROCESS_HH
-#define LCDD_FIELDTYPEPROCESS_HH 1
-
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-#include "FieldType.hh"
-
-#include <iostream>
-
-/**
- * @class FieldTypeProcess
- * @brief Generic process for fields.
- * @note This class sets name and units for a field.
- */
-class FieldTypeProcess: public SAXStateProcess
-{
-public:
-    FieldTypeProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~FieldTypeProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "FieldTypeProcess::StartElement: " << name << std::endl;
-
-        FieldType* fld = dynamic_cast<FieldType*>(m_obj);
-
-        if (fld) {
-
-            fld->set_name(attrs.getValue("name"));
-            fld->set_funit(attrs.getValue("funit"));
-            fld->set_lunit(attrs.getValue("lunit"));
-
-            //std::cout << "name: " << fld->get_name() << std::endl;
-        } else {
-            std::cerr << "Failed cast to FieldType." << std::endl;
-        }
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-        //std::cout << "FieldTypeProcess::StackPopNotify" << std::endl;
-    }
-
-protected:
-    SAXObject* m_obj;
-};
-
-#endif

lcdd/include/lcdd/schema
SensitiveDetectorTypeProcess.hh removed after 1.1
diff -N SensitiveDetectorTypeProcess.hh
--- SensitiveDetectorTypeProcess.hh	26 Jun 2013 01:32:46 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,88 +0,0 @@
-// $Header: /cvs/lcd/lcdd/include/lcdd/schema/Attic/SensitiveDetectorTypeProcess.hh,v 1.1 2013/06/26 01:32:46 jeremy Exp $
-
-#ifndef LCDD_SENSITIVEDETECTORTYPEPROCESS_HH
-#define LCDD_SENSITIVEDETECTORTYPEPROCESS_HH 1
-
-// LCDD
-#include "SensitiveDetectorType.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// G4
-#include "globals.hh"
-
-// std
-#include <iostream>
-
-/**
- @class SensitiveDetectorTypeProcess
- @brief SAX process for elements based on abstract SensitiveDetectorType.
- */
-class SensitiveDetectorTypeProcess: public SAXStateProcess
-{
-public:
-    SensitiveDetectorTypeProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~SensitiveDetectorTypeProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "SensitiveDetectorTypeProcess::StartElement: " << name << std::endl;
-
-        SensitiveDetectorType* sdt = dynamic_cast<SensitiveDetectorType*>(m_obj);
-
-        if (sdt) {
-            sdt->set_name(attrs.getValue("name"));
-            sdt->set_hitsCollectionName(attrs.getValue("hits_collection"));
-            sdt->set_ecut(attrs.getValue("ecut"));
-            sdt->set_eunit(attrs.getValue("eunit"));
-            sdt->set_verbose(attrs.getValue("verbose"));
-            sdt->set_endcap_flag(attrs.getValue("endcap_flag"));
-
-            // set the type str for factory build
-            sdt->set_type(name);
-        } else {
-            std::cerr << "SensitiveDetectorTypeProcess::StartElement - cast to SensitiveDetectorType failed!" << std::endl;
-        }
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SAXObject** so = Context()->GetTopObject();
-        SensitiveDetectorType* sdt = dynamic_cast<SensitiveDetectorType*>(m_obj);
-
-        // just push all content; could be idspecref or segmentation (for cal)
-        sdt->add_content(name, *so);
-    }
-
-protected:
-    SAXObject* m_obj;
-
-};
-
-#endif

lcdd/include/lcdd/schema
calorimeterProcess.hh removed after 1.1
diff -N calorimeterProcess.hh
--- calorimeterProcess.hh	26 Jun 2013 01:32:46 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,43 +0,0 @@
-// $Header: /cvs/lcd/lcdd/include/lcdd/schema/Attic/calorimeterProcess.hh,v 1.1 2013/06/26 01:32:46 jeremy Exp $
-#ifndef LCDD_CALORIMETERPROCESS_HH
-#define LCDD_CALORIMETERPROCESS_HH 1
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/calorimeter.hh"
-#include "lcdd/schema/SensitiveDetectorTypeProcess.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for calorimeter element.
- * @note Calls SAX processor for SensitiveDetectorTypeProcess parent class.
- */
-class calorimeterProcess: public SensitiveDetectorTypeProcess
-{
-public:
-    calorimeterProcess(const ProcessingContext* context = 0);
-
-    virtual ~calorimeterProcess();
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs);
-
-    virtual void EndElement(const std::string&);
-
-    virtual void Characters(const std::string&);
-
-    virtual void StackPopNotify(const std::string& name);
-
-    virtual const std::string& State() const;
-};
-
-#endif

lcdd/src/lcdd/processes
authorProcess.cc added at 1.1
diff -N authorProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ authorProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/authorProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/author.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for author element.
+ */
+class authorProcess: public SAXStateProcess
+{
+
+public:
+
+    authorProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~authorProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "authorProcess::StartElement" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        author* a = new author;
+
+        a->set_name(attrs.getValue("name"));
+        a->set_email(attrs.getValue("email"));
+
+        m_obj = a;
+        *obj = a;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "author";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(authorProcess)

lcdd/src/lcdd/processes
box_dipoleProcess.cc added at 1.1
diff -N box_dipoleProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ box_dipoleProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,74 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/box_dipoleProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/box_dipole.hh"
+#include "lcdd/processes/FieldTypeProcess.hh"
+
+// STL
+#include <iostream>
+
+class box_dipoleProcess: public FieldTypeProcess
+{
+public:
+
+    box_dipoleProcess(const ProcessingContext* context = 0) :
+            FieldTypeProcess(context)
+    {
+    }
+
+    virtual ~box_dipoleProcess()
+    {
+    }
+
+    void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        box_dipole* x = new box_dipole;
+
+        x->set_x(attrs.getValue("x"));
+        x->set_y(attrs.getValue("y"));
+        x->set_z(attrs.getValue("z"));
+        x->set_dx(attrs.getValue("dx"));
+        x->set_dy(attrs.getValue("dy"));
+        x->set_dz(attrs.getValue("dz"));
+        x->set_bx(attrs.getValue("bx"));
+        x->set_by(attrs.getValue("by"));
+        x->set_bz(attrs.getValue("bz"));
+
+        m_obj = x;
+        *obj = x;
+
+        FieldTypeProcess::StartElement(name, attrs);
+    }
+
+    void EndElement(const std::string&)
+    {
+    }
+
+    void Characters(const std::string&)
+    {
+    }
+
+    void StackPopNotify(const std::string&)
+    {
+    }
+
+    const std::string& State() const
+    {
+        static std::string tag = "box_dipole";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(box_dipoleProcess)
+

lcdd/src/lcdd/processes
calorimeterProcess.cc added at 1.1
diff -N calorimeterProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ calorimeterProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,48 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/calorimeterProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// LCDD
+#include "lcdd/processes/calorimeterProcess.hh"
+
+calorimeterProcess::calorimeterProcess(const ProcessingContext* context) :
+        SensitiveDetectorTypeProcess(context)
+{
+}
+
+calorimeterProcess::~calorimeterProcess()
+{
+}
+
+void calorimeterProcess::StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+{
+    SAXObject** obj = Context()->GetTopObject();
+    calorimeter* cal = new calorimeter;
+
+    cal->set_compare(attrs.getValue("hit_aggregation"));
+
+    m_obj = cal;
+    *obj = cal;
+
+    // parent type to set name and hitsCollectionName
+    SensitiveDetectorTypeProcess::StartElement(name, attrs);
+}
+
+void calorimeterProcess::EndElement(const std::string&)
+{
+}
+
+void calorimeterProcess::Characters(const std::string&)
+{
+}
+
+void calorimeterProcess::StackPopNotify(const std::string& name)
+{
+    SensitiveDetectorTypeProcess::StackPopNotify(name);
+}
+
+const std::string& calorimeterProcess::State() const
+{
+    static std::string tag = "calorimeter";
+    return tag;
+}
+
+DECLARE_PROCESS_FACTORY(calorimeterProcess)

lcdd/src/lcdd/processes
cell_readout_2dProcess.cc added at 1.1
diff -N cell_readout_2dProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ cell_readout_2dProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/cell_readout_2dProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/cell_readout_2d.hh"
+
+// STL
+#include <iostream>
+
+class cell_readout_2dProcess: public SAXStateProcess
+{
+
+public:
+
+    cell_readout_2dProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~cell_readout_2dProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        std::cout << "cell_readout_2dProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        cell_readout_2d* np = new cell_readout_2d;
+
+        np->setLengthUnit(attrs.getValue("lunit"));
+
+        np->setCellSizeX(attrs.getValue("cell_size_x"));
+        np->setCellSizeY(attrs.getValue("cell_size_y"));
+
+        m_obj = np;
+        *obj = np;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "cell_readout_2d";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(cell_readout_2dProcess)

lcdd/src/lcdd/processes
colorProcess.cc added at 1.1
diff -N colorProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ colorProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,80 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/colorProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/color.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ @class colorProcess
+ @brief SAX process for color element.
+ */
+class colorProcess: public SAXStateProcess
+{
+public:
+
+    colorProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~colorProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "color::StartElement()" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        color* c = new color;
+
+        c->set_R(attrs.getValue("R"));
+        c->set_G(attrs.getValue("G"));
+        c->set_B(attrs.getValue("B"));
+        c->set_alpha(attrs.getValue("alpha"));
+
+        m_obj = c;
+        *obj = c;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "color";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(colorProcess)

lcdd/src/lcdd/processes
commentProcess.cc added at 1.1
diff -N commentProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ commentProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,75 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/commentProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/comment.hh"
+
+// STL
+#include <iostream>
+
+/**
+ @class commentProcess
+ @brief SAX process for comment element.
+ */
+class commentProcess: public SAXStateProcess
+{
+public:
+    commentProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+    virtual ~commentProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
+    {
+        //std::cout << "commentProcess::StartElement" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        comment* c = new comment;
+
+        m_obj = c;
+        *obj = c;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string& cdata)
+    {
+        //std::cout << "commentProcess::Characters() - <" << cdata << ">" << std::endl;
+        comment* c = dynamic_cast<comment*>(m_obj);
+        c->set_comment(cdata);
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "comment";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(commentProcess)

lcdd/src/lcdd/processes
detectorProcess.cc added at 1.1
diff -N detectorProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ detectorProcess.cc	27 Jun 2013 00:05:57 -0000	1.1
@@ -0,0 +1,74 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/detectorProcess.cc,v 1.1 2013/06/27 00:05:57 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/detector.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for detector element.
+ */
+class detectorProcess: public SAXStateProcess
+{
+public:
+    detectorProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~detectorProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        detector* d = new detector;
+
+        d->set_name(attrs.getValue("name"));
+        d->set_version(attrs.getValue("version"));
+        d->set_url(attrs.getValue("url"));
+
+        m_obj = d;
+        *obj = d;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "detector";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(detectorProcess)

lcdd/src/lcdd/processes
dipoleProcess.cc added at 1.1
diff -N dipoleProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ dipoleProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/dipoleProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/dipole.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+/**
+ * @brief SAX process for the dipole element.
+ */
+class dipoleProcess: public SAXStateProcess
+{
+public:
+
+    dipoleProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~dipoleProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        dipole* d = new dipole;
+        d->set_name(attrs.getValue("name"));
+        d->set_lunit(attrs.getValue("lunit"));
+        d->set_funit(attrs.getValue("funit"));
+        d->set_zmax(attrs.getValue("zmax"));
+        d->set_zmin(attrs.getValue("zmin"));
+        d->set_rmax(attrs.getValue("rmax"));
+
+        m_obj = d;
+        *obj = d;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SAXObject** so = Context()->GetTopObject();
+        dipole* d = dynamic_cast<dipole*>(m_obj);
+        d->add_content(name, *so);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "dipole";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(dipoleProcess)

lcdd/src/lcdd/processes
dipole_coeffProcess.cc added at 1.1
diff -N dipole_coeffProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ dipole_coeffProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,74 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/dipole_coeffProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/dipole_coeff.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @class dipole_coeffProcess
+ * @brief SAX process to create the dipole_coeff element.
+ */
+class dipole_coeffProcess: public SAXStateProcess
+{
+public:
+
+    dipole_coeffProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~dipole_coeffProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        dipole_coeff* dpc = new dipole_coeff;
+
+        dpc->set_value(attrs.getValue("value"));
+
+        m_obj = dpc;
+        *obj = dpc;
+    }
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "dipole_coeff";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(dipole_coeffProcess)

lcdd/src/lcdd/processes
field_map_3dProcess.cc added at 1.1
diff -N field_map_3dProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ field_map_3dProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,68 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/field_map_3dProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/processes/FieldMapTypeProcess.hh"
+#include "lcdd/schema/field_map_3d.hh"
+
+// STL
+#include <iostream>
+
+// Geant4
+#include "globals.hh"
+
+/**
+ * @brief
+ */
+class field_map_3dProcess: public FieldMapTypeProcess
+{
+
+public:
+
+    field_map_3dProcess(const ProcessingContext* context = 0) :
+            FieldMapTypeProcess(context)
+    {
+    }
+
+    virtual ~field_map_3dProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        field_map_3d* fmap = new field_map_3d;
+
+        fmap->set_filename(attrs.getValue("filename"));
+
+        // Top-level caller needs to setup the SAXObject references.
+        m_obj = fmap;
+        *obj = fmap;
+
+        // Call next process UP in inheritance chain, after the SAXObject is set.
+        FieldMapTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        //std::cout << "field_map_3d::StackPopNotify" << std::endl;
+        FieldMapTypeProcess::StackPopNotify(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "field_map_3d";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(field_map_3dProcess)

lcdd/src/lcdd/processes
fieldrefProcess.cc added at 1.1
diff -N fieldrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ fieldrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,48 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/fieldrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// LCDD
+#include "lcdd/schema/FieldType.hh"
+
+/**
+ * @brief SAX process for fieldref element.
+ */
+class fieldrefProcess: public ReferenceTypeProcess
+{
+public:
+    fieldrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~fieldrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        FieldType::fieldref* fref = new FieldType::fieldref;
+
+        *obj = fref;
+        m_obj = fref;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "fieldref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(fieldrefProcess)

lcdd/src/lcdd/processes
generatorProcess.cc added at 1.1
diff -N generatorProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ generatorProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,75 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/generatorProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/generator.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for generator element.
+ */
+class generatorProcess: public SAXStateProcess
+{
+public:
+    generatorProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~generatorProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        generator* g = new generator;
+
+        g->set_name(attrs.getValue("name"));
+        g->set_version(attrs.getValue("version"));
+        g->set_file(attrs.getValue("file"));
+        g->set_checksum(attrs.getValue("checksum"));
+
+        m_obj = g;
+        *obj = g;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "generator";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(generatorProcess)

lcdd/src/lcdd/processes
global_fieldProcess.cc added at 1.1
diff -N global_fieldProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ global_fieldProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,76 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/global_fieldProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/global_field.hh"
+#include "lcdd/processes/SensitiveDetectorTypeProcess.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for global_field element.
+ */
+class global_fieldProcess: public SAXStateProcess
+{
+public:
+    global_fieldProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~global_fieldProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
+    {
+        //std::cout << "global_fieldProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        global_field* cal = new global_field;
+
+        m_obj = cal;
+        *obj = cal;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+        //std::cout << "global_fieldProcess::EndElement: " << name << " " << std::endl;
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        //std::cout << "global_fieldProcess::StackPopNotify: " << name << std::endl;
+
+        SAXObject** so = Context()->GetTopObject();
+        global_field* fobj = dynamic_cast<global_field*>(m_obj);
+
+        fobj->add_content(name, *so);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "global_field";
+        return tag;
+    }
+
+protected:
+    SAXObject* m_obj;
+
+};
+
+DECLARE_PROCESS_FACTORY(global_fieldProcess)

lcdd/src/lcdd/processes
global_grid_xyProcess.cc added at 1.1
diff -N global_grid_xyProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ global_grid_xyProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,82 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/global_grid_xyProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/global_grid_xy.hh"
+
+// STL
+#include <iostream>
+
+/**
+ @class grid_xyzProcess
+ @brief SAX process for grid_xyz element.
+ */
+class global_grid_xyProcess: public SAXStateProcess
+{
+
+public:
+
+    global_grid_xyProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~global_grid_xyProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        global_grid_xy* np = new global_grid_xy;
+
+        np->set_lunit(attrs.getValue("lunit"));
+
+        np->set_gridSizeX(attrs.getValue("grid_size_x"));
+        np->set_gridSizeY(attrs.getValue("grid_size_y"));
+
+        m_obj = np;
+        *obj = np;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+        ;
+    }
+
+    virtual void Characters(const std::string&)
+    {
+        ;
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+        ;
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "global_grid_xy";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(global_grid_xyProcess)

lcdd/src/lcdd/processes
grid_xyzProcess.cc added at 1.1
diff -N grid_xyzProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ grid_xyzProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,83 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/grid_xyzProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/grid_xyz.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for grid_xyz element.
+ */
+class grid_xyzProcess: public SAXStateProcess
+{
+
+public:
+
+    grid_xyzProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~grid_xyzProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "grid_xyzProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        grid_xyz* np = new grid_xyz;
+
+        np->set_lunit(attrs.getValue("lunit"));
+
+        np->set_gridSizeX(attrs.getValue("grid_size_x"));
+        np->set_gridSizeY(attrs.getValue("grid_size_y"));
+        np->set_gridSizeZ(attrs.getValue("grid_size_z"));
+
+        m_obj = np;
+        *obj = np;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+        //std::cout << "PROCESS::END OF TAG  : " << name << " " << std::endl;
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+        //std::cout << "PROCESS::NOTIFIED AFTER THE TAG: " << name << std::endl;
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "grid_xyz";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(grid_xyzProcess)

lcdd/src/lcdd/processes
headerProcess.cc added at 1.1
diff -N headerProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ headerProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,79 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/headerProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/header.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for header element.
+ */
+class headerProcess: public SAXStateProcess
+{
+public:
+    headerProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~headerProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
+    {
+        //std::cout << "headerProcess::StartElement" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        header* h = new header;
+
+        m_obj = h;
+        *obj = h;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        //std::cout << "headerProcess::StackPopNotify" << std::endl;
+
+        SAXObject** so = Context()->GetTopObject();
+        header* h = dynamic_cast<header*>(m_obj);
+
+        h->add_content(name, *so);
+
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "header";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(headerProcess)

lcdd/src/lcdd/processes
idspecProcess.cc added at 1.1
diff -N idspecProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ idspecProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,80 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/idspecProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/idspecElem.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for idspec element.
+ */
+class idspecProcess: public SAXStateProcess
+{
+public:
+
+    idspecProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~idspecProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "idspecProcess::StartElement() - " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        idspecElem* idspec = new idspecElem;
+
+        idspec->set_name(attrs.getValue("name"));
+        idspec->set_length(attrs.getValue("length"));
+
+        m_obj = idspec;
+        *obj = idspec;
+    }
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SAXObject** so = Context()->GetTopObject();
+        idspecElem* idspec = dynamic_cast<idspecElem*>(m_obj);
+        idspec->add_content(name, *so);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "idspec";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(idspecProcess)
+

lcdd/src/lcdd/processes
idspecrefProcess.cc added at 1.1
diff -N idspecrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ idspecrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,51 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/idspecrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// LCDD
+#include "lcdd/schema/IdSpecType.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for idspecref element.
+ * @note  Extends ReferenceTypeProcess for reference to idspec element.
+ */
+class idspecrefProcess: public ReferenceTypeProcess
+{
+public:
+    idspecrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~idspecrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+        IdSpecType::idspecref* s = new IdSpecType::idspecref;
+
+        *obj = s;
+        m_obj = s;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "idspecref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(idspecrefProcess)

lcdd/src/lcdd/processes
limitProcess.cc added at 1.1
diff -N limitProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ limitProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/limitProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/limit.hh"
+
+/**
+ *
+ */
+
+class limitProcess: public SAXStateProcess
+{
+
+public:
+    limitProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~limitProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        limit* lim = new limit;
+
+        lim->set_name(attrs.getValue("name"));
+        lim->set_value(attrs.getValue("value"));
+        lim->set_particles(attrs.getValue("particles"));
+        lim->set_unit(attrs.getValue("unit"));
+
+        m_obj = lim;
+        *obj = lim;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "limit";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+
+};
+
+DECLARE_PROCESS_FACTORY(limitProcess)

lcdd/src/lcdd/processes
limitrefProcess.cc added at 1.1
diff -N limitrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ limitrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,50 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/limitrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// LCDD
+#include "lcdd/schema/LimitType.hh"
+
+/**
+ * @brief SAX process for limitref element.
+ */
+class limitrefProcess: public ReferenceTypeProcess
+{
+public:
+    limitrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~limitrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "limitrefProcess" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        LimitType::limitref* lref = new LimitType::limitref;
+
+        *obj = lref;
+        m_obj = lref;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "limitref";
+        return tag;
+    }
+};
+
+//DECLARE_PROCESS_FACTORY(limitrefProcess);

lcdd/src/lcdd/processes
limitsetProcess.cc added at 1.1
diff -N limitsetProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ limitsetProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,83 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/limitsetProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/limitset.hh"
+#include "lcdd/schema/limit.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// Geant4
+#include "globals.hh"
+
+class limitsetProcess: public SAXStateProcess
+{
+public:
+    limitsetProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~limitsetProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        limitset* lim = new limitset;
+        lim->set_name(attrs.getValue("name"));
+
+        m_obj = lim;
+        *obj = lim;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        if (name == "limit") {
+            SAXObject** so = Context()->GetTopObject();
+            limitset* lim = dynamic_cast<limitset*>(m_obj);
+
+            if (lim != 0) {
+                lim->add_content(name, *so);
+            } else {
+                G4Exception("limitsetProcess::StackPopNotify()", "", FatalException, "Failed cast to limitset.");
+            }
+        } else {
+            std::cerr << "limitsetProcess::StackPopNotify() - Got limitset content that wasn't limit." << std::endl;
+        }
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "limitset";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+
+};
+
+DECLARE_PROCESS_FACTORY(limitsetProcess)

lcdd/src/lcdd/processes
limitsetrefProcess.cc added at 1.1
diff -N limitsetrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ limitsetrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,50 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/limitsetrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// LCDD
+#include "lcdd/schema/LimitSetType.hh"
+
+/**
+ * @brief SAX process for limitsetref element.
+ */
+class limitsetrefProcess: public ReferenceTypeProcess
+{
+public:
+    limitsetrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~limitsetrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "limitsetrefProcess" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        LimitSetType::limitsetref* lref = new LimitSetType::limitsetref;
+
+        *obj = lref;
+        m_obj = lref;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "limitsetref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(limitsetrefProcess)

lcdd/src/lcdd/processes
nonprojective_cylinderProcess.cc added at 1.1
diff -N nonprojective_cylinderProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ nonprojective_cylinderProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,80 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/nonprojective_cylinderProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/nonprojective_cylinder.hh"
+
+// STL
+#include <iostream>
+
+/**
+ @class nonprojective_cylinderProcess
+ @brief SAX process for nonprojective_cylinder element.
+ */
+class nonprojective_cylinderProcess: public SAXStateProcess
+{
+
+public:
+
+    nonprojective_cylinderProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~nonprojective_cylinderProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "nonprojective_cylinderProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        nonprojective_cylinder* np = new nonprojective_cylinder;
+
+        np->set_gridSizeZ(attrs.getValue("grid_size_z"));
+        np->set_gridSizePhi(attrs.getValue("grid_size_phi"));
+        np->set_lunit(attrs.getValue("lunit"));
+
+        m_obj = np;
+        *obj = np;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "nonprojective_cylinder";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(nonprojective_cylinderProcess)

lcdd/src/lcdd/processes
optical_calorimeterProcess.cc added at 1.1
diff -N optical_calorimeterProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ optical_calorimeterProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,43 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/optical_calorimeterProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/optical_calorimeter.hh"
+#include "lcdd/processes/calorimeterProcess.hh"
+
+// STL
+#include <iostream>
+
+/**
+ @class optical_calorimeterProcess
+ @brief SAX process for optical_calorimeter element.
+ @note  Calls SAX processor for SensitiveDetectorTypeProcess parent class.
+ */
+class optical_calorimeterProcess: public calorimeterProcess
+{
+public:
+    optical_calorimeterProcess(const ProcessingContext* context = 0) :
+            calorimeterProcess(context)
+    {
+    }
+
+    virtual ~optical_calorimeterProcess()
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "optical_calorimeter";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(optical_calorimeterProcess)

lcdd/src/lcdd/processes
physvolidProcess.cc added at 1.1
diff -N physvolidProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ physvolidProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,69 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/physvolidProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/physvolidElem.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for physvolid element.
+ */
+class physvolidProcess: public SAXStateProcess
+{
+public:
+    physvolidProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~physvolidProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        physvolidElem* pvid = new physvolidElem;
+
+        pvid->set_value(attrs.getValue("value"));
+        pvid->set_field_name(attrs.getValue("field_name"));
+
+        m_obj = pvid;
+        *obj = pvid;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "physvolid";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(physvolidProcess)

lcdd/src/lcdd/processes
projective_cylinderProcess.cc added at 1.1
diff -N projective_cylinderProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ projective_cylinderProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,79 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/projective_cylinderProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/projective_cylinder.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for projective_cylinder element.
+ */
+class projective_cylinderProcess: public SAXStateProcess
+{
+
+public:
+
+    projective_cylinderProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~projective_cylinderProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "projective_cylinderProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        projective_cylinder* prj = new projective_cylinder;
+
+        prj->set_ntheta(attrs.getValue("ntheta"));
+        prj->set_nphi(attrs.getValue("nphi"));
+
+        m_obj = prj;
+        *obj = prj;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "projective_cylinder";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(projective_cylinderProcess)
+

lcdd/src/lcdd/processes
projective_zplaneProcess.cc added at 1.1
diff -N projective_zplaneProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ projective_zplaneProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,80 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/projective_zplaneProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/projective_zplane.hh"
+
+// STL
+#include <iostream>
+
+/**
+ @class projective_zplaneProcess
+ @brief SAX process for projective_zplane element.
+ */
+class projective_zplaneProcess: public SAXStateProcess
+{
+
+public:
+
+    projective_zplaneProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~projective_zplaneProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "projective_zplaneProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        projective_zplane* prj = new projective_zplane;
+
+        prj->set_ntheta(attrs.getValue("ntheta"));
+        prj->set_nphi(attrs.getValue("nphi"));
+
+        m_obj = prj;
+        *obj = prj;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "projective_zplane";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(projective_zplaneProcess)
+

lcdd/src/lcdd/processes
regionProcess.cc added at 1.1
diff -N regionProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ regionProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,84 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/regionProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/region.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for region element.
+ */
+class regionProcess: public SAXStateProcess
+{
+
+public:
+
+    regionProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~regionProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        region* reg = new region;
+
+        reg->set_name(attrs.getValue("name"));
+        reg->set_storeSecondaries(attrs.getValue("store_secondaries"));
+        reg->set_killTracks(attrs.getValue("kill_tracks"));
+        reg->set_cut(attrs.getValue("cut"));
+        reg->set_lunit(attrs.getValue("lunit"));
+        reg->set_threshold(attrs.getValue("threshold"));
+        reg->set_eunit(attrs.getValue("eunit"));
+
+        m_obj = reg;
+        *obj = reg;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SAXObject** so = Context()->GetTopObject();
+        region* r = dynamic_cast<region*>(m_obj);
+        r->add_content(name, *so);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "region";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(regionProcess)

lcdd/src/lcdd/processes
regionrefProcess.cc added at 1.1
diff -N regionrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ regionrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,49 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/regionrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// LCDD
+#include "lcdd/schema/RegionType.hh"
+
+/**
+ * @brief SAX process for regionref element.
+ * @note  Extends ReferenceTypeProcess for reference to region element.
+ */
+class regionrefProcess: public ReferenceTypeProcess
+{
+public:
+    regionrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~regionrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        RegionType::regionref* regref = new RegionType::regionref;
+
+        *obj = regref;
+        m_obj = regref;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "regionref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(regionrefProcess)

lcdd/src/lcdd/processes
rz_field_mapProcess.cc added at 1.1
diff -N rz_field_mapProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ rz_field_mapProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/rz_field_mapProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/processes/FieldMapTypeProcess.hh"
+#include "lcdd/schema/rz_field_map.hh"
+
+// Geant4
+#include "globals.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief Processor for rz_field_map elements.
+ */
+class rz_field_mapProcess: public FieldMapTypeProcess
+{
+public:
+    rz_field_mapProcess(const ProcessingContext* context = 0) :
+            FieldMapTypeProcess(context)
+    {
+    }
+
+    virtual ~rz_field_mapProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //    std::cout << "rz_field_mapProcess::StartElement - " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        rz_field_map* rzmap = new rz_field_map;
+
+        /* set attributes */
+        rzmap->set_num_bins_r(attrs.getValue("num_bins_r"));
+        rzmap->set_grid_size_r(attrs.getValue("grid_size_r"));
+        rzmap->set_num_bins_z(attrs.getValue("num_bins_z"));
+        rzmap->set_grid_size_z(attrs.getValue("grid_size_z"));
+
+        /* Top-level caller needs to setup the SAXObject references. */
+        m_obj = rzmap;
+        *obj = rzmap;
+
+        /* Call next process UP in inheritance chain, after the SAXObject is set. */
+        FieldMapTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        //    std::cout << "rz_field_mapProcess::StackPopNotify" << std::endl;
+
+        if (name != "rzB") {
+            std::cerr << name << " is not a valid child element for rz_field_map." << std::endl;
+            exit(1);
+        }
+
+        FieldMapTypeProcess::StackPopNotify(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "rz_field_map";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(rz_field_mapProcess)

lcdd/src/lcdd/processes
rzbProcess.cc added at 1.1
diff -N rzbProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ rzbProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,80 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/rzbProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/rzb.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief Processor for rzB elements.
+ */
+class rzbProcess: public SAXStateProcess
+{
+
+public:
+    rzbProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~rzbProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "rzbProcess::StartElement" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        rzb* row = new rzb;
+
+        row->set_r(attrs.getValue("r"));
+        row->set_z(attrs.getValue("z"));
+        row->set_Br(attrs.getValue("Br"));
+        row->set_Bz(attrs.getValue("Bz"));
+
+        m_obj = row;
+        *obj = row;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "rzB";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+
+};
+
+DECLARE_PROCESS_FACTORY(rzbProcess)

lcdd/src/lcdd/processes
scorerProcess.cc added at 1.1
diff -N scorerProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ scorerProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,71 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/scorerProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// LCDD
+#include "lcdd/schema/scorer.hh"
+#include "lcdd/processes/SensitiveDetectorTypeProcess.hh"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for scorer element.
+ */
+class scorerProcess: public SensitiveDetectorTypeProcess
+{
+
+public:
+    scorerProcess(const ProcessingContext* context = 0) :
+            SensitiveDetectorTypeProcess(context)
+    {
+    }
+
+    virtual ~scorerProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "PROCESS::START OF TAG  : " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        scorer* scr = new scorer;
+        /*
+         scr->set_kill_tracks(attrs.getValue("kill_tracks") );
+         */
+
+        m_obj = scr;
+        *obj = scr;
+
+        SensitiveDetectorTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+        //std::cout << "PROCESS::END OF TAG  : " << name << " " << std::endl;
+
+        //SensitiveDetectorTypeProcess::EndElement( name );
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SensitiveDetectorTypeProcess::StackPopNotify(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "scorer";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(scorerProcess)

lcdd/src/lcdd/processes
sdrefProcess.cc added at 1.1
diff -N sdrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ sdrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,53 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/sdrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/SensitiveDetectorType.hh"
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+// STL
+#include <iostream>
+
+/**
+ @class sdrefProcess
+ @brief SAX process for sdref element.
+ @note  Extends ReferenceTypeProcess for reference to sd element.
+ */
+class sdrefProcess: public ReferenceTypeProcess
+{
+public:
+    sdrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~sdrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        SensitiveDetectorType::sdref* s = new SensitiveDetectorType::sdref;
+
+        *obj = s;
+        m_obj = s;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "sdref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(sdrefProcess)

lcdd/src/lcdd/processes
solenoidProcess.cc added at 1.1
diff -N solenoidProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ solenoidProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,77 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/solenoidProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/solenoid.hh"
+#include "lcdd/processes/FieldTypeProcess.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ * @brief SAX process for solenoid element.
+ */
+class solenoidProcess: public FieldTypeProcess
+{
+
+public:
+    solenoidProcess(const ProcessingContext* context = 0) :
+            FieldTypeProcess(context)
+    {
+    }
+
+    virtual ~solenoidProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "solenoidProcess::StartElement: " << name << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        solenoid* sol = new solenoid;
+
+        sol->set_innerField(attrs.getValue("inner_field"));
+        sol->set_outerField(attrs.getValue("outer_field"));
+        sol->set_zmin(attrs.getValue("zmin"));
+        sol->set_zmax(attrs.getValue("zmax"));
+        sol->set_innerRadius(attrs.getValue("inner_radius"));
+        sol->set_outerRadius(attrs.getValue("outer_radius"));
+
+        m_obj = sol;
+        *obj = sol;
+
+        FieldTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+        //std::cout << "solenoidProcess::EndElement: " << name << " " << std::endl;
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string&)
+    {
+        //std::cout << "calorimeterProcess::StackPopNotify: " << name << std::endl;
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "solenoid";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(solenoidProcess)

lcdd/src/lcdd/processes
trackerProcess.cc added at 1.1
diff -N trackerProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ trackerProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,65 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/trackerProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/tracker.hh"
+#include "lcdd/processes/SensitiveDetectorTypeProcess.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// STL
+#include <iostream>
+
+/**
+ @class trackerProcess
+ @brief SAX process for tracker element.
+ */
+class trackerProcess: public SensitiveDetectorTypeProcess
+{
+
+public:
+    trackerProcess(const ProcessingContext* context = 0) :
+            SensitiveDetectorTypeProcess(context)
+    {
+    }
+
+    virtual ~trackerProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        tracker* trk = new tracker;
+        trk->set_combine_hits(attrs.getValue("combine_hits"));
+
+        m_obj = trk;
+        *obj = trk;
+
+        SensitiveDetectorTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SensitiveDetectorTypeProcess::StackPopNotify(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "tracker";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(trackerProcess)

lcdd/src/lcdd/processes
unsegmented_calorimeterProcess.cc added at 1.1
diff -N unsegmented_calorimeterProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ unsegmented_calorimeterProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,35 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/unsegmented_calorimeterProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/processes/calorimeterProcess.hh"
+#include "lcdd/schema/unsegmented_calorimeter.hh"
+
+// GDML
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXComponentFactory.h"
+
+#include <iostream>
+
+/**
+ * @brief SAX process for unsegmented_calorimeter element.@note  Calls SAX processor for SensitiveDetectorTypeProcess parent class.
+ */
+class unsegmented_calorimeterProcess: public calorimeterProcess
+{
+public:
+    unsegmented_calorimeterProcess(const ProcessingContext* context = 0) :
+            calorimeterProcess(context)
+    {
+    }
+
+    virtual ~unsegmented_calorimeterProcess()
+    {
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "unsegmented_calorimeter";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(unsegmented_calorimeterProcess)

lcdd/src/lcdd/processes
visProcess.cc added at 1.1
diff -N visProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ visProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,84 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/visProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/vis.hh"
+
+// GDML
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+// std
+#include <iostream>
+
+/**
+ * @brief SAX process for vis element.
+ */
+class visProcess: public SAXStateProcess
+{
+public:
+
+    visProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~visProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        //std::cout << "visProcess::StartElement()" << std::endl;
+
+        SAXObject** obj = Context()->GetTopObject();
+
+        vis* v = new vis;
+
+        v->set_name(attrs.getValue("name"));
+        v->set_visible(attrs.getValue("visible"));
+        v->set_show_daughters(attrs.getValue("show_daughters"));
+        v->set_line_style(attrs.getValue("line_style"));
+        v->set_drawing_style(attrs.getValue("drawing_style"));
+
+        m_obj = v;
+        *obj = v;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        // add all content
+        SAXObject** so = Context()->GetTopObject();
+        vis* v = dynamic_cast<vis*>(m_obj);
+        v->add_content(name, *so);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "vis";
+        return tag;
+    }
+
+private:
+
+    SAXObject* m_obj;
+};
+
+DECLARE_PROCESS_FACTORY(visProcess)

lcdd/src/lcdd/processes
visrefProcess.cc added at 1.1
diff -N visrefProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ visrefProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,49 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/visrefProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+
+// LCDD
+#include "lcdd/schema/VisType.hh"
+
+// GDML
+#include "Processes/ReferenceTypeProcess.h"
+
+/**
+ * @brief SAX process for visref element.
+ * @note  Extends ReferenceTypeProcess for referencing the vis elements.
+ */
+class visrefProcess: public ReferenceTypeProcess
+{
+public:
+    visrefProcess(const ProcessingContext* context = 0) :
+            ReferenceTypeProcess(context)
+    {
+    }
+
+    virtual ~visrefProcess()
+    {
+    }
+
+    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        VisType::visref* visref = new VisType::visref;
+
+        *obj = visref;
+        m_obj = visref;
+
+        ReferenceTypeProcess::StartElement(name, attrs);
+    }
+
+    virtual void EndElement(const std::string& name)
+    {
+        ReferenceTypeProcess::EndElement(name);
+    }
+
+    virtual const std::string& State() const
+    {
+        static std::string tag = "visref";
+        return tag;
+    }
+};
+
+DECLARE_PROCESS_FACTORY(visrefProcess)

lcdd/src/lcdd/processes
volumeExtendedProcess.cc added at 1.1
diff -N volumeExtendedProcess.cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ volumeExtendedProcess.cc	27 Jun 2013 00:05:58 -0000	1.1
@@ -0,0 +1,85 @@
+// $Header: /cvs/lcd/lcdd/src/lcdd/processes/volumeExtendedProcess.cc,v 1.1 2013/06/27 00:05:58 jeremy Exp $
+#ifndef VolumeExtendedProcess_hh
+#define VolumeExtendedProcess_hh 1
+
+#include "Saxana/ProcessingConfigurator.h"
+#include "Saxana/ProcessingContext.h"
+#include "Saxana/SAXProcessor.h"
+#include "Saxana/StateStack.h"
+#include "Saxana/SAXProcessingState.h"
+#include "Saxana/SAXStateProcess.h"
+#include "Saxana/SAXComponentFactory.h"
+
+#include "Schema/volume.h"
+
+/**
+ * @brief SAX process for the volume element, as extended by LCDD.
+ * @note  This is mostly a cut and paste job of GDML's volumeProcess class,
+ * as this class does not appear to be extendable.  It is only defined in a cpp
+ * file with no include guards!
+ */
+class volumeExtendedProcess: public SAXStateProcess
+{
+public:
+    volumeExtendedProcess(const ProcessingContext* context = 0) :
+            SAXStateProcess(context), m_obj(0)
+    {
+    }
+
+    virtual ~volumeExtendedProcess()
+    {
+    }
+
+    virtual const SAXComponentObject* Build() const
+    {
+        return this;
+    }
+
+    // Analogical to SAX startElement callback
+    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
+    {
+        SAXObject** obj = Context()->GetTopObject();
+
+        volume* vo = new volume;
+
+        vo->set_name(attrs.getValue("name"));
+
+        m_obj = vo;
+        *obj = vo;
+    }
+
+    virtual void EndElement(const std::string&)
+    {
+    }
+
+    virtual void Characters(const std::string&)
+    {
+    }
+
+    virtual void StackPopNotify(const std::string& name)
+    {
+        SAXObject** so = Context()->GetTopObject();
+        volume* vobj = dynamic_cast<volume*>(m_obj);
+        vobj->add_content(name, *so);
+    }
+
+    // The name of the state this object will process
+    virtual const std::string& State() const
+    {
+        static std::string tag = "volume";
+        return tag;
+    }
+
+private:
+    SAXObject* m_obj;
+
+public:
+
+    static SAXObject* m_volumeSaved;
+
+};
+
+DECLARE_PROCESS_FACTORY(volumeExtendedProcess)
+
+#endif
+

lcdd/src/lcdd/schema
authorProcess.cc removed after 1.1
diff -N authorProcess.cc
--- authorProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/authorProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/author.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for author element.
- */
-class authorProcess: public SAXStateProcess
-{
-
-public:
-
-    authorProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~authorProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "authorProcess::StartElement" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        author* a = new author;
-
-        a->set_name(attrs.getValue("name"));
-        a->set_email(attrs.getValue("email"));
-
-        m_obj = a;
-        *obj = a;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "author";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(authorProcess)

lcdd/src/lcdd/schema
box_dipoleProcess.cc removed after 1.1
diff -N box_dipoleProcess.cc
--- box_dipoleProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,74 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/box_dipoleProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/box_dipole.hh"
-#include "lcdd/schema/FieldTypeProcess.hh"
-
-// STL
-#include <iostream>
-
-class box_dipoleProcess: public FieldTypeProcess
-{
-public:
-
-    box_dipoleProcess(const ProcessingContext* context = 0) :
-            FieldTypeProcess(context)
-    {
-    }
-
-    virtual ~box_dipoleProcess()
-    {
-    }
-
-    void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        box_dipole* x = new box_dipole;
-
-        x->set_x(attrs.getValue("x"));
-        x->set_y(attrs.getValue("y"));
-        x->set_z(attrs.getValue("z"));
-        x->set_dx(attrs.getValue("dx"));
-        x->set_dy(attrs.getValue("dy"));
-        x->set_dz(attrs.getValue("dz"));
-        x->set_bx(attrs.getValue("bx"));
-        x->set_by(attrs.getValue("by"));
-        x->set_bz(attrs.getValue("bz"));
-
-        m_obj = x;
-        *obj = x;
-
-        FieldTypeProcess::StartElement(name, attrs);
-    }
-
-    void EndElement(const std::string&)
-    {
-    }
-
-    void Characters(const std::string&)
-    {
-    }
-
-    void StackPopNotify(const std::string&)
-    {
-    }
-
-    const std::string& State() const
-    {
-        static std::string tag = "box_dipole";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(box_dipoleProcess)
-

lcdd/src/lcdd/schema
calorimeterProcess.cc removed after 1.1
diff -N calorimeterProcess.cc
--- calorimeterProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,48 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/calorimeterProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/calorimeterProcess.hh"
-
-calorimeterProcess::calorimeterProcess(const ProcessingContext* context) :
-        SensitiveDetectorTypeProcess(context)
-{
-}
-
-calorimeterProcess::~calorimeterProcess()
-{
-}
-
-void calorimeterProcess::StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-{
-    SAXObject** obj = Context()->GetTopObject();
-    calorimeter* cal = new calorimeter;
-
-    cal->set_compare(attrs.getValue("hit_aggregation"));
-
-    m_obj = cal;
-    *obj = cal;
-
-    // parent type to set name and hitsCollectionName
-    SensitiveDetectorTypeProcess::StartElement(name, attrs);
-}
-
-void calorimeterProcess::EndElement(const std::string&)
-{
-}
-
-void calorimeterProcess::Characters(const std::string&)
-{
-}
-
-void calorimeterProcess::StackPopNotify(const std::string& name)
-{
-    SensitiveDetectorTypeProcess::StackPopNotify(name);
-}
-
-const std::string& calorimeterProcess::State() const
-{
-    static std::string tag = "calorimeter";
-    return tag;
-}
-
-DECLARE_PROCESS_FACTORY(calorimeterProcess)

lcdd/src/lcdd/schema
cell_readout_2dProcess.cc removed after 1.1
diff -N cell_readout_2dProcess.cc
--- cell_readout_2dProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/cell_readout_2dProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/cell_readout_2d.hh"
-
-// STL
-#include <iostream>
-
-class cell_readout_2dProcess: public SAXStateProcess
-{
-
-public:
-
-    cell_readout_2dProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~cell_readout_2dProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        std::cout << "cell_readout_2dProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        cell_readout_2d* np = new cell_readout_2d;
-
-        np->setLengthUnit(attrs.getValue("lunit"));
-
-        np->setCellSizeX(attrs.getValue("cell_size_x"));
-        np->setCellSizeY(attrs.getValue("cell_size_y"));
-
-        m_obj = np;
-        *obj = np;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "cell_readout_2d";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(cell_readout_2dProcess)

lcdd/src/lcdd/schema
colorProcess.cc removed after 1.1
diff -N colorProcess.cc
--- colorProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,80 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/colorProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/color.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- @class colorProcess
- @brief SAX process for color element.
- */
-class colorProcess: public SAXStateProcess
-{
-public:
-
-    colorProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~colorProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "color::StartElement()" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        color* c = new color;
-
-        c->set_R(attrs.getValue("R"));
-        c->set_G(attrs.getValue("G"));
-        c->set_B(attrs.getValue("B"));
-        c->set_alpha(attrs.getValue("alpha"));
-
-        m_obj = c;
-        *obj = c;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "color";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(colorProcess)

lcdd/src/lcdd/schema
commentProcess.cc removed after 1.1
diff -N commentProcess.cc
--- commentProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,75 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/commentProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/comment.hh"
-
-// STL
-#include <iostream>
-
-/**
- @class commentProcess
- @brief SAX process for comment element.
- */
-class commentProcess: public SAXStateProcess
-{
-public:
-    commentProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-    virtual ~commentProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
-    {
-        //std::cout << "commentProcess::StartElement" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        comment* c = new comment;
-
-        m_obj = c;
-        *obj = c;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string& cdata)
-    {
-        //std::cout << "commentProcess::Characters() - <" << cdata << ">" << std::endl;
-        comment* c = dynamic_cast<comment*>(m_obj);
-        c->set_comment(cdata);
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "comment";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(commentProcess)

lcdd/src/lcdd/schema
detectorProcess.cc removed after 1.1
diff -N detectorProcess.cc
--- detectorProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,74 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/detectorProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/detector.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for detector element.
- */
-class detectorProcess: public SAXStateProcess
-{
-public:
-    detectorProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~detectorProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        detector* d = new detector;
-
-        d->set_name(attrs.getValue("name"));
-        d->set_version(attrs.getValue("version"));
-        d->set_url(attrs.getValue("url"));
-
-        m_obj = d;
-        *obj = d;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "detector";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(detectorProcess)

lcdd/src/lcdd/schema
dipoleProcess.cc removed after 1.1
diff -N dipoleProcess.cc
--- dipoleProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/dipoleProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/dipole.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-/**
- * @brief SAX process for the dipole element.
- */
-class dipoleProcess: public SAXStateProcess
-{
-public:
-
-    dipoleProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~dipoleProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        dipole* d = new dipole;
-        d->set_name(attrs.getValue("name"));
-        d->set_lunit(attrs.getValue("lunit"));
-        d->set_funit(attrs.getValue("funit"));
-        d->set_zmax(attrs.getValue("zmax"));
-        d->set_zmin(attrs.getValue("zmin"));
-        d->set_rmax(attrs.getValue("rmax"));
-
-        m_obj = d;
-        *obj = d;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SAXObject** so = Context()->GetTopObject();
-        dipole* d = dynamic_cast<dipole*>(m_obj);
-        d->add_content(name, *so);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "dipole";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(dipoleProcess)

lcdd/src/lcdd/schema
dipole_coeffProcess.cc removed after 1.1
diff -N dipole_coeffProcess.cc
--- dipole_coeffProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,74 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/dipole_coeffProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/dipole_coeff.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @class dipole_coeffProcess
- * @brief SAX process to create the dipole_coeff element.
- */
-class dipole_coeffProcess: public SAXStateProcess
-{
-public:
-
-    dipole_coeffProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~dipole_coeffProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        dipole_coeff* dpc = new dipole_coeff;
-
-        dpc->set_value(attrs.getValue("value"));
-
-        m_obj = dpc;
-        *obj = dpc;
-    }
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "dipole_coeff";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(dipole_coeffProcess)

lcdd/src/lcdd/schema
field_map_3dProcess.cc removed after 1.1
diff -N field_map_3dProcess.cc
--- field_map_3dProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,68 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/field_map_3dProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/FieldMapTypeProcess.hh"
-#include "lcdd/schema/field_map_3d.hh"
-
-// STL
-#include <iostream>
-
-// Geant4
-#include "globals.hh"
-
-/**
- * @brief
- */
-class field_map_3dProcess: public FieldMapTypeProcess
-{
-
-public:
-
-    field_map_3dProcess(const ProcessingContext* context = 0) :
-            FieldMapTypeProcess(context)
-    {
-    }
-
-    virtual ~field_map_3dProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        field_map_3d* fmap = new field_map_3d;
-
-        fmap->set_filename(attrs.getValue("filename"));
-
-        // Top-level caller needs to setup the SAXObject references.
-        m_obj = fmap;
-        *obj = fmap;
-
-        // Call next process UP in inheritance chain, after the SAXObject is set.
-        FieldMapTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        //std::cout << "field_map_3d::StackPopNotify" << std::endl;
-        FieldMapTypeProcess::StackPopNotify(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "field_map_3d";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(field_map_3dProcess)

lcdd/src/lcdd/schema
fieldrefProcess.cc removed after 1.1
diff -N fieldrefProcess.cc
--- fieldrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,48 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/fieldrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// LCDD
-#include "lcdd/schema/FieldType.hh"
-
-/**
- * @brief SAX process for fieldref element.
- */
-class fieldrefProcess: public ReferenceTypeProcess
-{
-public:
-    fieldrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~fieldrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        FieldType::fieldref* fref = new FieldType::fieldref;
-
-        *obj = fref;
-        m_obj = fref;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "fieldref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(fieldrefProcess)

lcdd/src/lcdd/schema
generatorProcess.cc removed after 1.1
diff -N generatorProcess.cc
--- generatorProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,75 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/generatorProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/generator.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for generator element.
- */
-class generatorProcess: public SAXStateProcess
-{
-public:
-    generatorProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~generatorProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        generator* g = new generator;
-
-        g->set_name(attrs.getValue("name"));
-        g->set_version(attrs.getValue("version"));
-        g->set_file(attrs.getValue("file"));
-        g->set_checksum(attrs.getValue("checksum"));
-
-        m_obj = g;
-        *obj = g;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "generator";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(generatorProcess)

lcdd/src/lcdd/schema
global_fieldProcess.cc removed after 1.1
diff -N global_fieldProcess.cc
--- global_fieldProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,76 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/global_fieldProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/global_field.hh"
-#include "lcdd/schema/SensitiveDetectorTypeProcess.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for global_field element.
- */
-class global_fieldProcess: public SAXStateProcess
-{
-public:
-    global_fieldProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~global_fieldProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
-    {
-        //std::cout << "global_fieldProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        global_field* cal = new global_field;
-
-        m_obj = cal;
-        *obj = cal;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-        //std::cout << "global_fieldProcess::EndElement: " << name << " " << std::endl;
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        //std::cout << "global_fieldProcess::StackPopNotify: " << name << std::endl;
-
-        SAXObject** so = Context()->GetTopObject();
-        global_field* fobj = dynamic_cast<global_field*>(m_obj);
-
-        fobj->add_content(name, *so);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "global_field";
-        return tag;
-    }
-
-protected:
-    SAXObject* m_obj;
-
-};
-
-DECLARE_PROCESS_FACTORY(global_fieldProcess)

lcdd/src/lcdd/schema
global_grid_xyProcess.cc removed after 1.1
diff -N global_grid_xyProcess.cc
--- global_grid_xyProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,82 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/global_grid_xyProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/global_grid_xy.hh"
-
-// STL
-#include <iostream>
-
-/**
- @class grid_xyzProcess
- @brief SAX process for grid_xyz element.
- */
-class global_grid_xyProcess: public SAXStateProcess
-{
-
-public:
-
-    global_grid_xyProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~global_grid_xyProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        global_grid_xy* np = new global_grid_xy;
-
-        np->set_lunit(attrs.getValue("lunit"));
-
-        np->set_gridSizeX(attrs.getValue("grid_size_x"));
-        np->set_gridSizeY(attrs.getValue("grid_size_y"));
-
-        m_obj = np;
-        *obj = np;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-        ;
-    }
-
-    virtual void Characters(const std::string&)
-    {
-        ;
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-        ;
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "global_grid_xy";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(global_grid_xyProcess)

lcdd/src/lcdd/schema
grid_xyzProcess.cc removed after 1.1
diff -N grid_xyzProcess.cc
--- grid_xyzProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,83 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/grid_xyzProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/grid_xyz.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for grid_xyz element.
- */
-class grid_xyzProcess: public SAXStateProcess
-{
-
-public:
-
-    grid_xyzProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~grid_xyzProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "grid_xyzProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        grid_xyz* np = new grid_xyz;
-
-        np->set_lunit(attrs.getValue("lunit"));
-
-        np->set_gridSizeX(attrs.getValue("grid_size_x"));
-        np->set_gridSizeY(attrs.getValue("grid_size_y"));
-        np->set_gridSizeZ(attrs.getValue("grid_size_z"));
-
-        m_obj = np;
-        *obj = np;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-        //std::cout << "PROCESS::END OF TAG  : " << name << " " << std::endl;
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-        //std::cout << "PROCESS::NOTIFIED AFTER THE TAG: " << name << std::endl;
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "grid_xyz";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(grid_xyzProcess)

lcdd/src/lcdd/schema
headerProcess.cc removed after 1.1
diff -N headerProcess.cc
--- headerProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,79 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/headerProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/header.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for header element.
- */
-class headerProcess: public SAXStateProcess
-{
-public:
-    headerProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~headerProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList&)
-    {
-        //std::cout << "headerProcess::StartElement" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        header* h = new header;
-
-        m_obj = h;
-        *obj = h;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        //std::cout << "headerProcess::StackPopNotify" << std::endl;
-
-        SAXObject** so = Context()->GetTopObject();
-        header* h = dynamic_cast<header*>(m_obj);
-
-        h->add_content(name, *so);
-
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "header";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(headerProcess)

lcdd/src/lcdd/schema
idspecProcess.cc removed after 1.1
diff -N idspecProcess.cc
--- idspecProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,80 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/idspecProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/idspecElem.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for idspec element.
- */
-class idspecProcess: public SAXStateProcess
-{
-public:
-
-    idspecProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~idspecProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "idspecProcess::StartElement() - " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        idspecElem* idspec = new idspecElem;
-
-        idspec->set_name(attrs.getValue("name"));
-        idspec->set_length(attrs.getValue("length"));
-
-        m_obj = idspec;
-        *obj = idspec;
-    }
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SAXObject** so = Context()->GetTopObject();
-        idspecElem* idspec = dynamic_cast<idspecElem*>(m_obj);
-        idspec->add_content(name, *so);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "idspec";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(idspecProcess)
-

lcdd/src/lcdd/schema
idspecrefProcess.cc removed after 1.1
diff -N idspecrefProcess.cc
--- idspecrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,51 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/idspecrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// LCDD
-#include "lcdd/schema/IdSpecType.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for idspecref element.
- * @note  Extends ReferenceTypeProcess for reference to idspec element.
- */
-class idspecrefProcess: public ReferenceTypeProcess
-{
-public:
-    idspecrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~idspecrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-        IdSpecType::idspecref* s = new IdSpecType::idspecref;
-
-        *obj = s;
-        m_obj = s;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "idspecref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(idspecrefProcess)

lcdd/src/lcdd/schema
limitProcess.cc removed after 1.1
diff -N limitProcess.cc
--- limitProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/limitProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/limit.hh"
-
-/**
- *
- */
-
-class limitProcess: public SAXStateProcess
-{
-
-public:
-    limitProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~limitProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        limit* lim = new limit;
-
-        lim->set_name(attrs.getValue("name"));
-        lim->set_value(attrs.getValue("value"));
-        lim->set_particles(attrs.getValue("particles"));
-        lim->set_unit(attrs.getValue("unit"));
-
-        m_obj = lim;
-        *obj = lim;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "limit";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-
-};
-
-DECLARE_PROCESS_FACTORY(limitProcess)

lcdd/src/lcdd/schema
limitrefProcess.cc removed after 1.1
diff -N limitrefProcess.cc
--- limitrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,50 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/limitrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// LCDD
-#include "lcdd/schema/LimitType.hh"
-
-/**
- * @brief SAX process for limitref element.
- */
-class limitrefProcess: public ReferenceTypeProcess
-{
-public:
-    limitrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~limitrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "limitrefProcess" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        LimitType::limitref* lref = new LimitType::limitref;
-
-        *obj = lref;
-        m_obj = lref;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "limitref";
-        return tag;
-    }
-};
-
-//DECLARE_PROCESS_FACTORY(limitrefProcess);

lcdd/src/lcdd/schema
limitsetProcess.cc removed after 1.1
diff -N limitsetProcess.cc
--- limitsetProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,83 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/limitsetProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/limitset.hh"
-#include "lcdd/schema/limit.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// Geant4
-#include "globals.hh"
-
-class limitsetProcess: public SAXStateProcess
-{
-public:
-    limitsetProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~limitsetProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        limitset* lim = new limitset;
-        lim->set_name(attrs.getValue("name"));
-
-        m_obj = lim;
-        *obj = lim;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        if (name == "limit") {
-            SAXObject** so = Context()->GetTopObject();
-            limitset* lim = dynamic_cast<limitset*>(m_obj);
-
-            if (lim != 0) {
-                lim->add_content(name, *so);
-            } else {
-                G4Exception("limitsetProcess::StackPopNotify()", "", FatalException, "Failed cast to limitset.");
-            }
-        } else {
-            std::cerr << "limitsetProcess::StackPopNotify() - Got limitset content that wasn't limit." << std::endl;
-        }
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "limitset";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-
-};
-
-DECLARE_PROCESS_FACTORY(limitsetProcess)

lcdd/src/lcdd/schema
limitsetrefProcess.cc removed after 1.1
diff -N limitsetrefProcess.cc
--- limitsetrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,50 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/limitsetrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// LCDD
-#include "lcdd/schema/LimitSetType.hh"
-
-/**
- * @brief SAX process for limitsetref element.
- */
-class limitsetrefProcess: public ReferenceTypeProcess
-{
-public:
-    limitsetrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~limitsetrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "limitsetrefProcess" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        LimitSetType::limitsetref* lref = new LimitSetType::limitsetref;
-
-        *obj = lref;
-        m_obj = lref;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "limitsetref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(limitsetrefProcess)

lcdd/src/lcdd/schema
nonprojective_cylinderProcess.cc removed after 1.1
diff -N nonprojective_cylinderProcess.cc
--- nonprojective_cylinderProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,80 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/nonprojective_cylinderProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/nonprojective_cylinder.hh"
-
-// STL
-#include <iostream>
-
-/**
- @class nonprojective_cylinderProcess
- @brief SAX process for nonprojective_cylinder element.
- */
-class nonprojective_cylinderProcess: public SAXStateProcess
-{
-
-public:
-
-    nonprojective_cylinderProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~nonprojective_cylinderProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "nonprojective_cylinderProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        nonprojective_cylinder* np = new nonprojective_cylinder;
-
-        np->set_gridSizeZ(attrs.getValue("grid_size_z"));
-        np->set_gridSizePhi(attrs.getValue("grid_size_phi"));
-        np->set_lunit(attrs.getValue("lunit"));
-
-        m_obj = np;
-        *obj = np;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "nonprojective_cylinder";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(nonprojective_cylinderProcess)

lcdd/src/lcdd/schema
optical_calorimeterProcess.cc removed after 1.1
diff -N optical_calorimeterProcess.cc
--- optical_calorimeterProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,43 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/optical_calorimeterProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/optical_calorimeter.hh"
-#include "lcdd/schema/calorimeterProcess.hh"
-
-// STL
-#include <iostream>
-
-/**
- @class optical_calorimeterProcess
- @brief SAX process for optical_calorimeter element.
- @note  Calls SAX processor for SensitiveDetectorTypeProcess parent class.
- */
-class optical_calorimeterProcess: public calorimeterProcess
-{
-public:
-    optical_calorimeterProcess(const ProcessingContext* context = 0) :
-            calorimeterProcess(context)
-    {
-    }
-
-    virtual ~optical_calorimeterProcess()
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "optical_calorimeter";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(optical_calorimeterProcess)

lcdd/src/lcdd/schema
physvolidProcess.cc removed after 1.1
diff -N physvolidProcess.cc
--- physvolidProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,69 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/physvolidProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/physvolidElem.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for physvolid element.
- */
-class physvolidProcess: public SAXStateProcess
-{
-public:
-    physvolidProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~physvolidProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        physvolidElem* pvid = new physvolidElem;
-
-        pvid->set_value(attrs.getValue("value"));
-        pvid->set_field_name(attrs.getValue("field_name"));
-
-        m_obj = pvid;
-        *obj = pvid;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "physvolid";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(physvolidProcess)

lcdd/src/lcdd/schema
projective_cylinderProcess.cc removed after 1.1
diff -N projective_cylinderProcess.cc
--- projective_cylinderProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,79 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/projective_cylinderProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/projective_cylinder.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for projective_cylinder element.
- */
-class projective_cylinderProcess: public SAXStateProcess
-{
-
-public:
-
-    projective_cylinderProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~projective_cylinderProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "projective_cylinderProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        projective_cylinder* prj = new projective_cylinder;
-
-        prj->set_ntheta(attrs.getValue("ntheta"));
-        prj->set_nphi(attrs.getValue("nphi"));
-
-        m_obj = prj;
-        *obj = prj;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "projective_cylinder";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(projective_cylinderProcess)
-

lcdd/src/lcdd/schema
projective_zplaneProcess.cc removed after 1.1
diff -N projective_zplaneProcess.cc
--- projective_zplaneProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,80 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/projective_zplaneProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/projective_zplane.hh"
-
-// STL
-#include <iostream>
-
-/**
- @class projective_zplaneProcess
- @brief SAX process for projective_zplane element.
- */
-class projective_zplaneProcess: public SAXStateProcess
-{
-
-public:
-
-    projective_zplaneProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~projective_zplaneProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "projective_zplaneProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        projective_zplane* prj = new projective_zplane;
-
-        prj->set_ntheta(attrs.getValue("ntheta"));
-        prj->set_nphi(attrs.getValue("nphi"));
-
-        m_obj = prj;
-        *obj = prj;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "projective_zplane";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(projective_zplaneProcess)
-

lcdd/src/lcdd/schema
regionProcess.cc removed after 1.1
diff -N regionProcess.cc
--- regionProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,84 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/regionProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/region.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for region element.
- */
-class regionProcess: public SAXStateProcess
-{
-
-public:
-
-    regionProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~regionProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        region* reg = new region;
-
-        reg->set_name(attrs.getValue("name"));
-        reg->set_storeSecondaries(attrs.getValue("store_secondaries"));
-        reg->set_killTracks(attrs.getValue("kill_tracks"));
-        reg->set_cut(attrs.getValue("cut"));
-        reg->set_lunit(attrs.getValue("lunit"));
-        reg->set_threshold(attrs.getValue("threshold"));
-        reg->set_eunit(attrs.getValue("eunit"));
-
-        m_obj = reg;
-        *obj = reg;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SAXObject** so = Context()->GetTopObject();
-        region* r = dynamic_cast<region*>(m_obj);
-        r->add_content(name, *so);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "region";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(regionProcess)

lcdd/src/lcdd/schema
regionrefProcess.cc removed after 1.1
diff -N regionrefProcess.cc
--- regionrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,49 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/regionrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// LCDD
-#include "lcdd/schema/RegionType.hh"
-
-/**
- * @brief SAX process for regionref element.
- * @note  Extends ReferenceTypeProcess for reference to region element.
- */
-class regionrefProcess: public ReferenceTypeProcess
-{
-public:
-    regionrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~regionrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        RegionType::regionref* regref = new RegionType::regionref;
-
-        *obj = regref;
-        m_obj = regref;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "regionref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(regionrefProcess)

lcdd/src/lcdd/schema
rz_field_mapProcess.cc removed after 1.1
diff -N rz_field_mapProcess.cc
--- rz_field_mapProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/rz_field_mapProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/FieldMapTypeProcess.hh"
-#include "lcdd/schema/rz_field_map.hh"
-
-// Geant4
-#include "globals.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief Processor for rz_field_map elements.
- */
-class rz_field_mapProcess: public FieldMapTypeProcess
-{
-public:
-    rz_field_mapProcess(const ProcessingContext* context = 0) :
-            FieldMapTypeProcess(context)
-    {
-    }
-
-    virtual ~rz_field_mapProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //    std::cout << "rz_field_mapProcess::StartElement - " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        rz_field_map* rzmap = new rz_field_map;
-
-        /* set attributes */
-        rzmap->set_num_bins_r(attrs.getValue("num_bins_r"));
-        rzmap->set_grid_size_r(attrs.getValue("grid_size_r"));
-        rzmap->set_num_bins_z(attrs.getValue("num_bins_z"));
-        rzmap->set_grid_size_z(attrs.getValue("grid_size_z"));
-
-        /* Top-level caller needs to setup the SAXObject references. */
-        m_obj = rzmap;
-        *obj = rzmap;
-
-        /* Call next process UP in inheritance chain, after the SAXObject is set. */
-        FieldMapTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        //    std::cout << "rz_field_mapProcess::StackPopNotify" << std::endl;
-
-        if (name != "rzB") {
-            std::cerr << name << " is not a valid child element for rz_field_map." << std::endl;
-            exit(1);
-        }
-
-        FieldMapTypeProcess::StackPopNotify(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "rz_field_map";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(rz_field_mapProcess)

lcdd/src/lcdd/schema
rzbProcess.cc removed after 1.1
diff -N rzbProcess.cc
--- rzbProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,80 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/rzbProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/rzb.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief Processor for rzB elements.
- */
-class rzbProcess: public SAXStateProcess
-{
-
-public:
-    rzbProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~rzbProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "rzbProcess::StartElement" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        rzb* row = new rzb;
-
-        row->set_r(attrs.getValue("r"));
-        row->set_z(attrs.getValue("z"));
-        row->set_Br(attrs.getValue("Br"));
-        row->set_Bz(attrs.getValue("Bz"));
-
-        m_obj = row;
-        *obj = row;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "rzB";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-
-};
-
-DECLARE_PROCESS_FACTORY(rzbProcess)

lcdd/src/lcdd/schema
scorerProcess.cc removed after 1.1
diff -N scorerProcess.cc
--- scorerProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,71 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/scorerProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// LCDD
-#include "lcdd/schema/scorer.hh"
-#include "lcdd/schema/SensitiveDetectorTypeProcess.hh"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for scorer element.
- */
-class scorerProcess: public SensitiveDetectorTypeProcess
-{
-
-public:
-    scorerProcess(const ProcessingContext* context = 0) :
-            SensitiveDetectorTypeProcess(context)
-    {
-    }
-
-    virtual ~scorerProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "PROCESS::START OF TAG  : " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        scorer* scr = new scorer;
-        /*
-         scr->set_kill_tracks(attrs.getValue("kill_tracks") );
-         */
-
-        m_obj = scr;
-        *obj = scr;
-
-        SensitiveDetectorTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-        //std::cout << "PROCESS::END OF TAG  : " << name << " " << std::endl;
-
-        //SensitiveDetectorTypeProcess::EndElement( name );
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SensitiveDetectorTypeProcess::StackPopNotify(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "scorer";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(scorerProcess)

lcdd/src/lcdd/schema
sdrefProcess.cc removed after 1.1
diff -N sdrefProcess.cc
--- sdrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,53 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/sdrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/SensitiveDetectorType.hh"
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-// STL
-#include <iostream>
-
-/**
- @class sdrefProcess
- @brief SAX process for sdref element.
- @note  Extends ReferenceTypeProcess for reference to sd element.
- */
-class sdrefProcess: public ReferenceTypeProcess
-{
-public:
-    sdrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~sdrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        SensitiveDetectorType::sdref* s = new SensitiveDetectorType::sdref;
-
-        *obj = s;
-        m_obj = s;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "sdref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(sdrefProcess)

lcdd/src/lcdd/schema
solenoidProcess.cc removed after 1.1
diff -N solenoidProcess.cc
--- solenoidProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,77 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/solenoidProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/solenoid.hh"
-#include "lcdd/schema/FieldTypeProcess.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- * @brief SAX process for solenoid element.
- */
-class solenoidProcess: public FieldTypeProcess
-{
-
-public:
-    solenoidProcess(const ProcessingContext* context = 0) :
-            FieldTypeProcess(context)
-    {
-    }
-
-    virtual ~solenoidProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "solenoidProcess::StartElement: " << name << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        solenoid* sol = new solenoid;
-
-        sol->set_innerField(attrs.getValue("inner_field"));
-        sol->set_outerField(attrs.getValue("outer_field"));
-        sol->set_zmin(attrs.getValue("zmin"));
-        sol->set_zmax(attrs.getValue("zmax"));
-        sol->set_innerRadius(attrs.getValue("inner_radius"));
-        sol->set_outerRadius(attrs.getValue("outer_radius"));
-
-        m_obj = sol;
-        *obj = sol;
-
-        FieldTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-        //std::cout << "solenoidProcess::EndElement: " << name << " " << std::endl;
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string&)
-    {
-        //std::cout << "calorimeterProcess::StackPopNotify: " << name << std::endl;
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "solenoid";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(solenoidProcess)

lcdd/src/lcdd/schema
trackerProcess.cc removed after 1.1
diff -N trackerProcess.cc
--- trackerProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,65 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/trackerProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/tracker.hh"
-#include "lcdd/schema/SensitiveDetectorTypeProcess.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// STL
-#include <iostream>
-
-/**
- @class trackerProcess
- @brief SAX process for tracker element.
- */
-class trackerProcess: public SensitiveDetectorTypeProcess
-{
-
-public:
-    trackerProcess(const ProcessingContext* context = 0) :
-            SensitiveDetectorTypeProcess(context)
-    {
-    }
-
-    virtual ~trackerProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        tracker* trk = new tracker;
-        trk->set_combine_hits(attrs.getValue("combine_hits"));
-
-        m_obj = trk;
-        *obj = trk;
-
-        SensitiveDetectorTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SensitiveDetectorTypeProcess::StackPopNotify(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "tracker";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(trackerProcess)

lcdd/src/lcdd/schema
unsegmented_calorimeterProcess.cc removed after 1.1
diff -N unsegmented_calorimeterProcess.cc
--- unsegmented_calorimeterProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,35 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/unsegmented_calorimeterProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/calorimeterProcess.hh"
-#include "lcdd/schema/unsegmented_calorimeter.hh"
-
-// GDML
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXComponentFactory.h"
-
-#include <iostream>
-
-/**
- * @brief SAX process for unsegmented_calorimeter element.@note  Calls SAX processor for SensitiveDetectorTypeProcess parent class.
- */
-class unsegmented_calorimeterProcess: public calorimeterProcess
-{
-public:
-    unsegmented_calorimeterProcess(const ProcessingContext* context = 0) :
-            calorimeterProcess(context)
-    {
-    }
-
-    virtual ~unsegmented_calorimeterProcess()
-    {
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "unsegmented_calorimeter";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(unsegmented_calorimeterProcess)

lcdd/src/lcdd/schema
visProcess.cc removed after 1.1
diff -N visProcess.cc
--- visProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,84 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/visProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/vis.hh"
-
-// GDML
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-// std
-#include <iostream>
-
-/**
- * @brief SAX process for vis element.
- */
-class visProcess: public SAXStateProcess
-{
-public:
-
-    visProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~visProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        //std::cout << "visProcess::StartElement()" << std::endl;
-
-        SAXObject** obj = Context()->GetTopObject();
-
-        vis* v = new vis;
-
-        v->set_name(attrs.getValue("name"));
-        v->set_visible(attrs.getValue("visible"));
-        v->set_show_daughters(attrs.getValue("show_daughters"));
-        v->set_line_style(attrs.getValue("line_style"));
-        v->set_drawing_style(attrs.getValue("drawing_style"));
-
-        m_obj = v;
-        *obj = v;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        // add all content
-        SAXObject** so = Context()->GetTopObject();
-        vis* v = dynamic_cast<vis*>(m_obj);
-        v->add_content(name, *so);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "vis";
-        return tag;
-    }
-
-private:
-
-    SAXObject* m_obj;
-};
-
-DECLARE_PROCESS_FACTORY(visProcess)

lcdd/src/lcdd/schema
visrefProcess.cc removed after 1.1
diff -N visrefProcess.cc
--- visrefProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,49 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/visrefProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-
-// LCDD
-#include "lcdd/schema/VisType.hh"
-
-// GDML
-#include "Processes/ReferenceTypeProcess.h"
-
-/**
- * @brief SAX process for visref element.
- * @note  Extends ReferenceTypeProcess for referencing the vis elements.
- */
-class visrefProcess: public ReferenceTypeProcess
-{
-public:
-    visrefProcess(const ProcessingContext* context = 0) :
-            ReferenceTypeProcess(context)
-    {
-    }
-
-    virtual ~visrefProcess()
-    {
-    }
-
-    virtual void StartElement(const std::string& name, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        VisType::visref* visref = new VisType::visref;
-
-        *obj = visref;
-        m_obj = visref;
-
-        ReferenceTypeProcess::StartElement(name, attrs);
-    }
-
-    virtual void EndElement(const std::string& name)
-    {
-        ReferenceTypeProcess::EndElement(name);
-    }
-
-    virtual const std::string& State() const
-    {
-        static std::string tag = "visref";
-        return tag;
-    }
-};
-
-DECLARE_PROCESS_FACTORY(visrefProcess)

lcdd/src/lcdd/schema
volumeExtendedProcess.cc removed after 1.1
diff -N volumeExtendedProcess.cc
--- volumeExtendedProcess.cc	26 Jun 2013 23:51:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,85 +0,0 @@
-// $Header: /cvs/lcd/lcdd/src/lcdd/schema/Attic/volumeExtendedProcess.cc,v 1.1 2013/06/26 23:51:01 jeremy Exp $
-#ifndef VolumeExtendedProcess_hh
-#define VolumeExtendedProcess_hh 1
-
-#include "Saxana/ProcessingConfigurator.h"
-#include "Saxana/ProcessingContext.h"
-#include "Saxana/SAXProcessor.h"
-#include "Saxana/StateStack.h"
-#include "Saxana/SAXProcessingState.h"
-#include "Saxana/SAXStateProcess.h"
-#include "Saxana/SAXComponentFactory.h"
-
-#include "Schema/volume.h"
-
-/**
- * @brief SAX process for the volume element, as extended by LCDD.
- * @note  This is mostly a cut and paste job of GDML's volumeProcess class,
- * as this class does not appear to be extendable.  It is only defined in a cpp
- * file with no include guards!
- */
-class volumeExtendedProcess: public SAXStateProcess
-{
-public:
-    volumeExtendedProcess(const ProcessingContext* context = 0) :
-            SAXStateProcess(context), m_obj(0)
-    {
-    }
-
-    virtual ~volumeExtendedProcess()
-    {
-    }
-
-    virtual const SAXComponentObject* Build() const
-    {
-        return this;
-    }
-
-    // Analogical to SAX startElement callback
-    virtual void StartElement(const std::string&, const ASCIIAttributeList& attrs)
-    {
-        SAXObject** obj = Context()->GetTopObject();
-
-        volume* vo = new volume;
-
-        vo->set_name(attrs.getValue("name"));
-
-        m_obj = vo;
-        *obj = vo;
-    }
-
-    virtual void EndElement(const std::string&)
-    {
-    }
-
-    virtual void Characters(const std::string&)
-    {
-    }
-
-    virtual void StackPopNotify(const std::string& name)
-    {
-        SAXObject** so = Context()->GetTopObject();
-        volume* vobj = dynamic_cast<volume*>(m_obj);
-        vobj->add_content(name, *so);
-    }
-
-    // The name of the state this object will process
-    virtual const std::string& State() const
-    {
-        static std::string tag = "volume";
-        return tag;
-    }
-
-private:
-    SAXObject* m_obj;
-
-public:
-
-    static SAXObject* m_volumeSaved;
-
-};
-
-DECLARE_PROCESS_FACTORY(volumeExtendedProcess)
-
-#endif
-
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1