CMS 3D CMS Logo

ModifiedSurfaceGenerator.h
Go to the documentation of this file.
1 #ifndef ModifiedSurfaceGenerator_h_
2 #define ModifiedSurfaceGenerator_h_
3 
5 
9 template <class T>
11 template <class T>
13 class MediumProperties;
14 
15 template <class T>
17 private:
19 
20 public:
22  ModifiedSurfaceGenerator(const T* surface) : theSurface(surface) {}
24  ModifiedSurfaceGenerator(const SurfacePointer surface) : theSurface(surface.get()) {}
28  const MediumProperties& mp = theSurface->mediumProperties();
29  SurfacePointer newSurface(new T(position, rotation, mp, theSurface->bounds().clone()));
30  return newSurface;
31  }
32 
33 private:
36 };
37 
38 #endif
TkRotation< float >
ModifiedSurfaceGenerator::atNewPosition
SurfacePointer atNewPosition(const Surface::PositionType &position, const Surface::RotationType &rotation) const
Definition: ModifiedSurfaceGenerator.h:27
ModifiedSurfaceGenerator::theSurface
ConstReferenceCountingPointer< T > theSurface
original surface
Definition: ModifiedSurfaceGenerator.h:35
ConstReferenceCountingPointer
Definition: ReferenceCounted.h:67
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
ModifiedSurfaceGenerator::ModifiedSurfaceGenerator
ModifiedSurfaceGenerator(const SurfacePointer surface)
constructor from ReferenceCountingPointer
Definition: ModifiedSurfaceGenerator.h:24
Surface.h
Point3DBase< float, GlobalTag >
idealTransformation.rotation
dictionary rotation
Definition: idealTransformation.py:1
position
static int position[264][3]
Definition: ReadPGInfo.cc:289
get
#define get
ModifiedSurfaceGenerator::SurfacePointer
ReferenceCountingPointer< T > SurfacePointer
Definition: ModifiedSurfaceGenerator.h:18
MediumProperties
Definition: MediumProperties.h:12
T
long double T
Definition: Basic3DVectorLD.h:48
ModifiedSurfaceGenerator::ModifiedSurfaceGenerator
ModifiedSurfaceGenerator(const T *surface)
constructor from pointer
Definition: ModifiedSurfaceGenerator.h:22
ModifiedSurfaceGenerator
Definition: ModifiedSurfaceGenerator.h:16