Skip to content
Snippets Groups Projects
ForDetEnvelopeFactory.h 1.08 KiB
Newer Older
  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
#ifndef GEOMODELENVELOPES_FORDETENVELOPEFACTORY_H
#define GEOMODELENVELOPES_FORDETENVELOPEFACTORY_H

#include "GeoModelKernel/GeoVDetectorFactory.h"
#include "GeoModelEnvelopes/ForDetEnvelopeManager.h"

class StoreGateSvc;
class StoredMaterialManager;
class ForDetEnvelopeFactory final : public GeoVDetectorFactory
  // Constructor:
  ForDetEnvelopeFactory(StoreGateSvc *pDetStore);
  ~ForDetEnvelopeFactory() = default;

  // Creation of geometry:
  virtual void create(GeoPhysVol *world) override;
  // Access to the results:
  virtual const ForDetEnvelopeManager * getDetectorManager() const override;

  // Illegal operations:
  const ForDetEnvelopeFactory & operator=(const ForDetEnvelopeFactory &right);
  ForDetEnvelopeFactory(const ForDetEnvelopeFactory &right);
  // The manager:
  ForDetEnvelopeManager*   m_detectorManager;
  StoredMaterialManager* m_materialManager;
  StoreGateSvc*             m_detectorStore;
};

// Class ForDetEnvelopeFactory