ATLAS Offline Software
Loading...
Searching...
No Matches
AGDDSnake.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef AGDDSnake_H
6#define AGDDSnake_H
7
9
10#include <string>
11#include <vector>
12#include <iostream>
13
14class AGDDSnake: public AGDDVolume {
15public:
16 AGDDSnake(const std::string& s,
19 : AGDDVolume(s,vs,ss),m_radius(0) {}
20 void SetPoint(const GeoTrf::Vector3D& p)
21 {
22 m_points.push_back(p);
23 }
24 int NrOfPoints() const {return m_points.size();}
25 double Radius() const {return m_radius;}
26 void Radius(double d) {m_radius=d;}
27 GeoTrf::Vector3D GetPoint(int i) const {return m_points[i];}
28 virtual void CreateVolume (AGDDBuilder& builder) override;
29 virtual void CreateSolid (const AGDDBuilder& builder) override;
30private:
31 double m_radius;
32 std::vector<GeoTrf::Vector3D> m_points;
33};
34
35#endif
static Double_t ss
double m_radius
Definition AGDDSnake.h:31
virtual void CreateSolid(const AGDDBuilder &builder) override
Definition AGDDSnake.cxx:9
AGDDSnake(const std::string &s, AGDDVolumeStore &vs, AGDDSectionStore &ss)
Definition AGDDSnake.h:16
int NrOfPoints() const
Definition AGDDSnake.h:24
void Radius(double d)
Definition AGDDSnake.h:26
std::vector< GeoTrf::Vector3D > m_points
Definition AGDDSnake.h:32
virtual void CreateVolume(AGDDBuilder &builder) override
Definition AGDDSnake.cxx:15
void SetPoint(const GeoTrf::Vector3D &p)
Definition AGDDSnake.h:20
double Radius() const
Definition AGDDSnake.h:25
GeoTrf::Vector3D GetPoint(int i) const
Definition AGDDSnake.h:27
AGDDVolume(const std::string &s, AGDDVolumeStore &vs, AGDDSectionStore &ss, bool v=false)