#include <xsd/cxx/pre.hxx>

#include "SimFlowEnergyTransfer_Coil.hxx"

#include "simflowenergytrans_airconn_1_2_inletnodename.hxx"

#include "simflowenergytrans_airconn_1_2_outletnodename.hxx"

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_Name_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name () const
      {
        return this->SimFlowEnergyTrans_Name_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_Name_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name ()
      {
        return this->SimFlowEnergyTrans_Name_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (const SimFlowEnergyTrans_Name_type& x)
      {
        this->SimFlowEnergyTrans_Name_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (const SimFlowEnergyTrans_Name_optional& x)
      {
        this->SimFlowEnergyTrans_Name_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (::std::auto_ptr< SimFlowEnergyTrans_Name_type > x)
      {
        this->SimFlowEnergyTrans_Name_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName () const
      {
        return this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName ()
      {
        return this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (const SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type& x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (const SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (::std::auto_ptr< SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type > x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName () const
      {
        return this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName ()
      {
        return this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (const SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type& x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (const SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (::std::auto_ptr< SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type > x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_NumberOfAirConns_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns () const
      {
        return this->SimFlowEnergyTrans_NumberOfAirConns_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_NumberOfAirConns_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns ()
      {
        return this->SimFlowEnergyTrans_NumberOfAirConns_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns (const SimFlowEnergyTrans_NumberOfAirConns_type& x)
      {
        this->SimFlowEnergyTrans_NumberOfAirConns_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns (const SimFlowEnergyTrans_NumberOfAirConns_optional& x)
      {
        this->SimFlowEnergyTrans_NumberOfAirConns_ = x;
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName () const
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName ()
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (const SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (const SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName () const
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName ()
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (const SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (const SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnIsUsed_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed () const
      {
        return this->SimFlowEnergyTrans_PlantConnIsUsed_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnIsUsed_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed ()
      {
        return this->SimFlowEnergyTrans_PlantConnIsUsed_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (const SimFlowEnergyTrans_PlantConnIsUsed_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (const SimFlowEnergyTrans_PlantConnIsUsed_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (::std::auto_ptr< SimFlowEnergyTrans_PlantConnIsUsed_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnInletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName () const
      {
        return this->SimFlowEnergyTrans_PlantConnInletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnInletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName ()
      {
        return this->SimFlowEnergyTrans_PlantConnInletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (const SimFlowEnergyTrans_PlantConnInletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (const SimFlowEnergyTrans_PlantConnInletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (::std::auto_ptr< SimFlowEnergyTrans_PlantConnInletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnOutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName () const
      {
        return this->SimFlowEnergyTrans_PlantConnOutletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnOutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName ()
      {
        return this->SimFlowEnergyTrans_PlantConnOutletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (const SimFlowEnergyTrans_PlantConnOutletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (const SimFlowEnergyTrans_PlantConnOutletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (::std::auto_ptr< SimFlowEnergyTrans_PlantConnOutletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName () const
      {
        return this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName ()
      {
        return this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (const SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type& x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (const SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (::std::auto_ptr< SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type > x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName () const
      {
        return this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName ()
      {
        return this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (const SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type& x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (const SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (::std::auto_ptr< SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type > x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AmbientZoneName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName () const
      {
        return this->SimFlowEnergyTrans_AmbientZoneName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AmbientZoneName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName ()
      {
        return this->SimFlowEnergyTrans_AmbientZoneName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (const SimFlowEnergyTrans_AmbientZoneName_type& x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (const SimFlowEnergyTrans_AmbientZoneName_optional& x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (::std::auto_ptr< SimFlowEnergyTrans_AmbientZoneName_type > x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_.set (x);
      }
    }
  }
}

#include <xsd/cxx/xml/dom/parsing-source.hxx>

#include <xsd/cxx/tree/type-factory-map.hxx>

namespace _xsd
{
  static
  const ::xsd::cxx::tree::type_factory_plate< 0, char >
  type_factory_plate_init;
}

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil ()
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const RefId_type& RefId)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (RefId),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const SimFlowEnergyTransfer_Coil& x,
                                  ::xml_schema::flags f,
                                  ::xml_schema::container* c)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (x, f, c),
        SimFlowEnergyTrans_Name_ (x.SimFlowEnergyTrans_Name_, f, this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (x.SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_, f, this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (x.SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_, f, this),
        SimFlowEnergyTrans_NumberOfAirConns_ (x.SimFlowEnergyTrans_NumberOfAirConns_, f, this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (x.SimFlowEnergyTrans_AirConn_1_2_InletNodeName_, f, this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (x.SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_, f, this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (x.SimFlowEnergyTrans_PlantConnIsUsed_, f, this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (x.SimFlowEnergyTrans_PlantConnInletNodeName_, f, this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (x.SimFlowEnergyTrans_PlantConnOutletNodeName_, f, this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (x.SimFlowEnergyTrans_SupplyInletWaterStorageTankName_, f, this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (x.SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_, f, this),
        SimFlowEnergyTrans_AmbientZoneName_ (x.SimFlowEnergyTrans_AmbientZoneName_, f, this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const ::xercesc::DOMElement& e,
                                  ::xml_schema::flags f,
                                  ::xml_schema::container* c)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (e, f | ::xml_schema::flags::base, c),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
        if ((f & ::xml_schema::flags::base) == 0)
        {
          ::xsd::cxx::xml::dom::parser< char > p (e, true, false, true);
          this->parse (p, f);
        }
      }

      void SimFlowEnergyTransfer_Coil::
      parse (::xsd::cxx::xml::dom::parser< char >& p,
             ::xml_schema::flags f)
      {
        this->::schema::simxml::MepModel::SimFlowEnergyTransfer::parse (p, f);

        for (; p.more_content (); p.next_content (false))
        {
          const ::xercesc::DOMElement& i (p.cur_element ());
          const ::xsd::cxx::xml::qualified_name< char > n (
            ::xsd::cxx::xml::dom::name< char > (i));

          if (n.name () == "SimFlowEnergyTrans_Name" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_Name_type > r (
              SimFlowEnergyTrans_Name_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_Name_)
            {
              this->SimFlowEnergyTrans_Name_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type > r (
              SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_)
            {
              this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type > r (
              SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_)
            {
              this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_NumberOfAirConns" && n.namespace_ () == "http:
          {
            if (!this->SimFlowEnergyTrans_NumberOfAirConns_)
            {
              this->SimFlowEnergyTrans_NumberOfAirConns_.set (SimFlowEnergyTrans_NumberOfAirConns_traits::create (i, f, this));
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_AirConn_1_2_InletNodeName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type > r (
              SimFlowEnergyTrans_AirConn_1_2_InletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_)
            {
              this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_AirConn_1_2_OutletNodeName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type > r (
              SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_)
            {
              this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_PlantConnIsUsed" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnIsUsed_type > r (
              SimFlowEnergyTrans_PlantConnIsUsed_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnIsUsed_)
            {
              this->SimFlowEnergyTrans_PlantConnIsUsed_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_PlantConnInletNodeName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnInletNodeName_type > r (
              SimFlowEnergyTrans_PlantConnInletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnInletNodeName_)
            {
              this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_PlantConnOutletNodeName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnOutletNodeName_type > r (
              SimFlowEnergyTrans_PlantConnOutletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnOutletNodeName_)
            {
              this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_SupplyInletWaterStorageTankName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type > r (
              SimFlowEnergyTrans_SupplyInletWaterStorageTankName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_)
            {
              this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_CollectionOutletWaterStorageTankName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type > r (
              SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_)
            {
              this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (r);
              continue;
            }
          }

          if (n.name () == "SimFlowEnergyTrans_AmbientZoneName" && n.namespace_ () == "http:
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AmbientZoneName_type > r (
              SimFlowEnergyTrans_AmbientZoneName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AmbientZoneName_)
            {
              this->SimFlowEnergyTrans_AmbientZoneName_.set (r);
              continue;
            }
          }

          break;
        }
      }

      SimFlowEnergyTransfer_Coil* SimFlowEnergyTransfer_Coil::
      _clone (::xml_schema::flags f,
              ::xml_schema::container* c) const
      {
        return new class SimFlowEnergyTransfer_Coil (*this, f, c);
      }

      SimFlowEnergyTransfer_Coil& SimFlowEnergyTransfer_Coil::
      operator= (const SimFlowEnergyTransfer_Coil& x)
      {
        if (this != &x)
        {
          static_cast< ::schema::simxml::MepModel::SimFlowEnergyTransfer& > (*this) = x;
          this->SimFlowEnergyTrans_Name_ = x.SimFlowEnergyTrans_Name_;
          this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ = x.SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
          this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ = x.SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
          this->SimFlowEnergyTrans_NumberOfAirConns_ = x.SimFlowEnergyTrans_NumberOfAirConns_;
          this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ = x.SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
          this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ = x.SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
          this->SimFlowEnergyTrans_PlantConnIsUsed_ = x.SimFlowEnergyTrans_PlantConnIsUsed_;
          this->SimFlowEnergyTrans_PlantConnInletNodeName_ = x.SimFlowEnergyTrans_PlantConnInletNodeName_;
          this->SimFlowEnergyTrans_PlantConnOutletNodeName_ = x.SimFlowEnergyTrans_PlantConnOutletNodeName_;
          this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ = x.SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
          this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ = x.SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
          this->SimFlowEnergyTrans_AmbientZoneName_ = x.SimFlowEnergyTrans_AmbientZoneName_;
        }

        return *this;
      }

      SimFlowEnergyTransfer_Coil::
      ~SimFlowEnergyTransfer_Coil ()
      {
      }
    }
  }
}

#include <istream>
#include <xsd/cxx/xml/sax/std-input-source.hxx>
#include <xsd/cxx/tree/error-handler.hxx>

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {
    }
  }
}

#include <xsd/cxx/post.hxx>
// Copyright (c) 2005-2014 Code Synthesis Tools CC
//
// This program was generated by CodeSynthesis XSD, an XML Schema to
// C++ data binding compiler.
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
//
// In addition, as a special exception, Code Synthesis Tools CC gives
// permission to link this program with the Xerces-C++ library (or with
// modified versions of Xerces-C++ that use the same license as Xerces-C++),
// and distribute linked combinations including the two. You must obey
// the GNU General Public License version 2 in all respects for all of
// the code used other than Xerces-C++. If you modify this copy of the
// program, you may extend this exception to your version of the program,
// but you are not obligated to do so. If you do not wish to do so, delete
// this exception statement from your version.
//
// Furthermore, Code Synthesis Tools CC makes a special exception for
// the Free/Libre and Open Source Software (FLOSS) which is described
// in the accompanying FLOSSE file.
//

// Begin prologue.
//
//
// End prologue.

#include <xsd/cxx/pre.hxx>

#include "SimFlowEnergyTransfer_Coil.hxx"

#include "simflowenergytrans_airconn_1_2_inletnodename.hxx"

#include "simflowenergytrans_airconn_1_2_outletnodename.hxx"

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {
      // SimFlowEnergyTransfer_Coil
      // 

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_Name_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name () const
      {
        return this->SimFlowEnergyTrans_Name_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_Name_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name ()
      {
        return this->SimFlowEnergyTrans_Name_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (const SimFlowEnergyTrans_Name_type& x)
      {
        this->SimFlowEnergyTrans_Name_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (const SimFlowEnergyTrans_Name_optional& x)
      {
        this->SimFlowEnergyTrans_Name_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_Name (::std::auto_ptr< SimFlowEnergyTrans_Name_type > x)
      {
        this->SimFlowEnergyTrans_Name_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName () const
      {
        return this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName ()
      {
        return this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (const SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type& x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (const SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_optional& x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName (::std::auto_ptr< SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type > x)
      {
        this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName () const
      {
        return this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName ()
      {
        return this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (const SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type& x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (const SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_optional& x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName (::std::auto_ptr< SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type > x)
      {
        this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_NumberOfAirConns_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns () const
      {
        return this->SimFlowEnergyTrans_NumberOfAirConns_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_NumberOfAirConns_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns ()
      {
        return this->SimFlowEnergyTrans_NumberOfAirConns_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns (const SimFlowEnergyTrans_NumberOfAirConns_type& x)
      {
        this->SimFlowEnergyTrans_NumberOfAirConns_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_NumberOfAirConns (const SimFlowEnergyTrans_NumberOfAirConns_optional& x)
      {
        this->SimFlowEnergyTrans_NumberOfAirConns_ = x;
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName () const
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName ()
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (const SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (const SimFlowEnergyTrans_AirConn_1_2_InletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_InletNodeName (::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName () const
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName ()
      {
        return this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (const SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (const SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AirConn_1_2_OutletNodeName (::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnIsUsed_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed () const
      {
        return this->SimFlowEnergyTrans_PlantConnIsUsed_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnIsUsed_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed ()
      {
        return this->SimFlowEnergyTrans_PlantConnIsUsed_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (const SimFlowEnergyTrans_PlantConnIsUsed_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (const SimFlowEnergyTrans_PlantConnIsUsed_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnIsUsed (::std::auto_ptr< SimFlowEnergyTrans_PlantConnIsUsed_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnIsUsed_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnInletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName () const
      {
        return this->SimFlowEnergyTrans_PlantConnInletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnInletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName ()
      {
        return this->SimFlowEnergyTrans_PlantConnInletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (const SimFlowEnergyTrans_PlantConnInletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (const SimFlowEnergyTrans_PlantConnInletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnInletNodeName (::std::auto_ptr< SimFlowEnergyTrans_PlantConnInletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnOutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName () const
      {
        return this->SimFlowEnergyTrans_PlantConnOutletNodeName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_PlantConnOutletNodeName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName ()
      {
        return this->SimFlowEnergyTrans_PlantConnOutletNodeName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (const SimFlowEnergyTrans_PlantConnOutletNodeName_type& x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (const SimFlowEnergyTrans_PlantConnOutletNodeName_optional& x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_PlantConnOutletNodeName (::std::auto_ptr< SimFlowEnergyTrans_PlantConnOutletNodeName_type > x)
      {
        this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName () const
      {
        return this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName ()
      {
        return this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (const SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type& x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (const SimFlowEnergyTrans_SupplyInletWaterStorageTankName_optional& x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_SupplyInletWaterStorageTankName (::std::auto_ptr< SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type > x)
      {
        this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName () const
      {
        return this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName ()
      {
        return this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (const SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type& x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (const SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_optional& x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_CollectionOutletWaterStorageTankName (::std::auto_ptr< SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type > x)
      {
        this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (x);
      }

      const SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AmbientZoneName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName () const
      {
        return this->SimFlowEnergyTrans_AmbientZoneName_;
      }

      SimFlowEnergyTransfer_Coil::SimFlowEnergyTrans_AmbientZoneName_optional& SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName ()
      {
        return this->SimFlowEnergyTrans_AmbientZoneName_;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (const SimFlowEnergyTrans_AmbientZoneName_type& x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_.set (x);
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (const SimFlowEnergyTrans_AmbientZoneName_optional& x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_ = x;
      }

      void SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTrans_AmbientZoneName (::std::auto_ptr< SimFlowEnergyTrans_AmbientZoneName_type > x)
      {
        this->SimFlowEnergyTrans_AmbientZoneName_.set (x);
      }
    }
  }
}

#include <xsd/cxx/xml/dom/parsing-source.hxx>

#include <xsd/cxx/tree/type-factory-map.hxx>

namespace _xsd
{
  static
  const ::xsd::cxx::tree::type_factory_plate< 0, char >
  type_factory_plate_init;
}

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {
      // SimFlowEnergyTransfer_Coil
      //

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil ()
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const RefId_type& RefId)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (RefId),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const SimFlowEnergyTransfer_Coil& x,
                                  ::xml_schema::flags f,
                                  ::xml_schema::container* c)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (x, f, c),
        SimFlowEnergyTrans_Name_ (x.SimFlowEnergyTrans_Name_, f, this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (x.SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_, f, this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (x.SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_, f, this),
        SimFlowEnergyTrans_NumberOfAirConns_ (x.SimFlowEnergyTrans_NumberOfAirConns_, f, this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (x.SimFlowEnergyTrans_AirConn_1_2_InletNodeName_, f, this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (x.SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_, f, this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (x.SimFlowEnergyTrans_PlantConnIsUsed_, f, this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (x.SimFlowEnergyTrans_PlantConnInletNodeName_, f, this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (x.SimFlowEnergyTrans_PlantConnOutletNodeName_, f, this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (x.SimFlowEnergyTrans_SupplyInletWaterStorageTankName_, f, this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (x.SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_, f, this),
        SimFlowEnergyTrans_AmbientZoneName_ (x.SimFlowEnergyTrans_AmbientZoneName_, f, this)
      {
      }

      SimFlowEnergyTransfer_Coil::
      SimFlowEnergyTransfer_Coil (const ::xercesc::DOMElement& e,
                                  ::xml_schema::flags f,
                                  ::xml_schema::container* c)
      : ::schema::simxml::MepModel::SimFlowEnergyTransfer (e, f | ::xml_schema::flags::base, c),
        SimFlowEnergyTrans_Name_ (this),
        SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ (this),
        SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ (this),
        SimFlowEnergyTrans_NumberOfAirConns_ (this),
        SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ (this),
        SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnIsUsed_ (this),
        SimFlowEnergyTrans_PlantConnInletNodeName_ (this),
        SimFlowEnergyTrans_PlantConnOutletNodeName_ (this),
        SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ (this),
        SimFlowEnergyTrans_AmbientZoneName_ (this)
      {
        if ((f & ::xml_schema::flags::base) == 0)
        {
          ::xsd::cxx::xml::dom::parser< char > p (e, true, false, true);
          this->parse (p, f);
        }
      }

      void SimFlowEnergyTransfer_Coil::
      parse (::xsd::cxx::xml::dom::parser< char >& p,
             ::xml_schema::flags f)
      {
        this->::schema::simxml::MepModel::SimFlowEnergyTransfer::parse (p, f);

        for (; p.more_content (); p.next_content (false))
        {
          const ::xercesc::DOMElement& i (p.cur_element ());
          const ::xsd::cxx::xml::qualified_name< char > n (
            ::xsd::cxx::xml::dom::name< char > (i));

          // SimFlowEnergyTrans_Name
          //
          if (n.name () == "SimFlowEnergyTrans_Name" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_Name_type > r (
              SimFlowEnergyTrans_Name_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_Name_)
            {
              this->SimFlowEnergyTrans_Name_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName
          //
          if (n.name () == "SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_type > r (
              SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_)
            {
              this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName
          //
          if (n.name () == "SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_type > r (
              SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_)
            {
              this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_NumberOfAirConns
          //
          if (n.name () == "SimFlowEnergyTrans_NumberOfAirConns" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            if (!this->SimFlowEnergyTrans_NumberOfAirConns_)
            {
              this->SimFlowEnergyTrans_NumberOfAirConns_.set (SimFlowEnergyTrans_NumberOfAirConns_traits::create (i, f, this));
              continue;
            }
          }

          // SimFlowEnergyTrans_AirConn_1_2_InletNodeName
          //
          if (n.name () == "SimFlowEnergyTrans_AirConn_1_2_InletNodeName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_InletNodeName_type > r (
              SimFlowEnergyTrans_AirConn_1_2_InletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_)
            {
              this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_AirConn_1_2_OutletNodeName
          //
          if (n.name () == "SimFlowEnergyTrans_AirConn_1_2_OutletNodeName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_type > r (
              SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_)
            {
              this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_PlantConnIsUsed
          //
          if (n.name () == "SimFlowEnergyTrans_PlantConnIsUsed" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnIsUsed_type > r (
              SimFlowEnergyTrans_PlantConnIsUsed_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnIsUsed_)
            {
              this->SimFlowEnergyTrans_PlantConnIsUsed_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_PlantConnInletNodeName
          //
          if (n.name () == "SimFlowEnergyTrans_PlantConnInletNodeName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnInletNodeName_type > r (
              SimFlowEnergyTrans_PlantConnInletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnInletNodeName_)
            {
              this->SimFlowEnergyTrans_PlantConnInletNodeName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_PlantConnOutletNodeName
          //
          if (n.name () == "SimFlowEnergyTrans_PlantConnOutletNodeName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_PlantConnOutletNodeName_type > r (
              SimFlowEnergyTrans_PlantConnOutletNodeName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_PlantConnOutletNodeName_)
            {
              this->SimFlowEnergyTrans_PlantConnOutletNodeName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_SupplyInletWaterStorageTankName
          //
          if (n.name () == "SimFlowEnergyTrans_SupplyInletWaterStorageTankName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_SupplyInletWaterStorageTankName_type > r (
              SimFlowEnergyTrans_SupplyInletWaterStorageTankName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_)
            {
              this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_CollectionOutletWaterStorageTankName
          //
          if (n.name () == "SimFlowEnergyTrans_CollectionOutletWaterStorageTankName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_type > r (
              SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_)
            {
              this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_.set (r);
              continue;
            }
          }

          // SimFlowEnergyTrans_AmbientZoneName
          //
          if (n.name () == "SimFlowEnergyTrans_AmbientZoneName" && n.namespace_ () == "http://d-alchemy.com/schema/simxml/MepModel")
          {
            ::std::auto_ptr< SimFlowEnergyTrans_AmbientZoneName_type > r (
              SimFlowEnergyTrans_AmbientZoneName_traits::create (i, f, this));

            if (!this->SimFlowEnergyTrans_AmbientZoneName_)
            {
              this->SimFlowEnergyTrans_AmbientZoneName_.set (r);
              continue;
            }
          }

          break;
        }
      }

      SimFlowEnergyTransfer_Coil* SimFlowEnergyTransfer_Coil::
      _clone (::xml_schema::flags f,
              ::xml_schema::container* c) const
      {
        return new class SimFlowEnergyTransfer_Coil (*this, f, c);
      }

      SimFlowEnergyTransfer_Coil& SimFlowEnergyTransfer_Coil::
      operator= (const SimFlowEnergyTransfer_Coil& x)
      {
        if (this != &x)
        {
          static_cast< ::schema::simxml::MepModel::SimFlowEnergyTransfer& > (*this) = x;
          this->SimFlowEnergyTrans_Name_ = x.SimFlowEnergyTrans_Name_;
          this->SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_ = x.SimFlowEnergyTrans_OverallMdlSimulationProgCallingMngrName_;
          this->SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_ = x.SimFlowEnergyTrans_MdlSetupandSizingProgCallingMngrName_;
          this->SimFlowEnergyTrans_NumberOfAirConns_ = x.SimFlowEnergyTrans_NumberOfAirConns_;
          this->SimFlowEnergyTrans_AirConn_1_2_InletNodeName_ = x.SimFlowEnergyTrans_AirConn_1_2_InletNodeName_;
          this->SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_ = x.SimFlowEnergyTrans_AirConn_1_2_OutletNodeName_;
          this->SimFlowEnergyTrans_PlantConnIsUsed_ = x.SimFlowEnergyTrans_PlantConnIsUsed_;
          this->SimFlowEnergyTrans_PlantConnInletNodeName_ = x.SimFlowEnergyTrans_PlantConnInletNodeName_;
          this->SimFlowEnergyTrans_PlantConnOutletNodeName_ = x.SimFlowEnergyTrans_PlantConnOutletNodeName_;
          this->SimFlowEnergyTrans_SupplyInletWaterStorageTankName_ = x.SimFlowEnergyTrans_SupplyInletWaterStorageTankName_;
          this->SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_ = x.SimFlowEnergyTrans_CollectionOutletWaterStorageTankName_;
          this->SimFlowEnergyTrans_AmbientZoneName_ = x.SimFlowEnergyTrans_AmbientZoneName_;
        }

        return *this;
      }

      SimFlowEnergyTransfer_Coil::
      ~SimFlowEnergyTransfer_Coil ()
      {
      }
    }
  }
}

#include <istream>
#include <xsd/cxx/xml/sax/std-input-source.hxx>
#include <xsd/cxx/tree/error-handler.hxx>

namespace schema
{
  namespace simxml
  {
    namespace MepModel
    {
    }
  }
}

#include <xsd/cxx/post.hxx>

// Begin epilogue.
//
//
// End epilogue.

