Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
Heed::manip_box Class Reference

Box "manipulator". More...

#include <box.h>

+ Inheritance diagram for Heed::manip_box:

Public Member Functions

 manip_box ()
 Constructor.
 
 manip_box (const box &f)
 
virtual ~manip_box ()
 Destructor.
 
virtual absvolGavol () const
 Get the volume.
 
virtual void chname (char *nm) const
 
virtual void print (std::ostream &file, int l) const
 
virtual manip_boxcopy () const
 
- Public Member Functions inherited from Heed::manip_absvol
virtual absvolGavol () const =0
 Get the volume.
 
virtual const abssyscoorGasc () const
 Get the coordinate system.
 
virtual int m_check_point_inside (const point &fpt, const vec &dir) const
 
virtual int m_find_embed_vol (const point &fpt, const vec &fdir, manip_absvol_treeid *atid) const
 
virtual int m_range (trajestep &fts, int s_ext, int &sb, PassivePtr< manip_absvol > &faeid) const
 
virtual int m_range_ext (trajestep &fts, int s_ext) const
 
void down_absref (absref *f) const
 
void up_absref (absref *f) const
 
void m_chname (char *nm) const
 
virtual void m_print (std::ostream &file, int l) const
 
virtual manip_absvolcopy () const
 
virtual ~manip_absvol ()
 
- Public Member Functions inherited from Heed::absref
virtual ~absref ()
 Destructor.
 
virtual void down (const abssyscoor *fasc)
 Convert numbering representation of object to basical system of fasc.
 
virtual void up (const abssyscoor *fasc)
 Convert numbering representation of objects to new system.
 
virtual void turn (const vec &dir, vfloat angle)
 Turn around axis doing via center of coordinate system along dir.
 
virtual void shift (const vec &dir)
 
- Public Member Functions inherited from Heed::RegPassivePtr
 RegPassivePtr (void)
 
 RegPassivePtr (char fs_ban_del, char fs_ban_sub, char fs_ban_cop=0)
 
 RegPassivePtr (const RegPassivePtr &f)
 
RegPassivePtroperator= (const RegPassivePtr &f)
 
CountPP_ns::CountPassivePtrbook (void) const
 
void clear_pointers (void) const
 
virtual RegPassivePtrcopy () const
 
virtual ~RegPassivePtr ()
 
virtual void print (std::ostream &file, int l=1) const
 
void set_s_ban_del (char fs_ban_del)
 
char get_s_ban_del (void) const
 
void set_s_ban_sub (char fs_ban_sub)
 
char get_s_ban_sub (void) const
 
void set_s_ban_cop (char fs_ban_cop)
 
char get_s_ban_cop (void) const
 
void set_s_allow_del_at_zero_count (char fs_allow_del_at_zero_count)
 
char get_s_allow_del_at_zero_count (void) const
 
long get_total_number_of_references (void) const
 
- Public Member Functions inherited from Heed::box
 box ()
 Default constructor.
 
 box (vfloat fdx, vfloat fdy, vfloat fdz, const std::string &fname)
 
 box (vfloat fdx, vfloat fdy, vfloat fdz, vfloat fprec, const std::string &fname)
 Constructor with user-provided precision.
 
 box (box &fb)
 
 box (const box &fb)
 
virtual ~box ()
 Destructor.
 
void init_prec ()
 
void init_planes ()
 
virtual int check_point_inside (const point &fpt, const vec &dir) const
 
virtual int range_ext (trajestep &fts, int s_ext) const
 Range till exit from given volume or to entry only.
 
virtual void income (gparticle *gp)
 
virtual void chname (char *nm) const
 
virtual void print (std::ostream &file, int l) const
 
virtual boxcopy () const
 
- Public Member Functions inherited from Heed::absvol
virtual ~absvol ()
 Destructor.
 
virtual int check_point_inside (const point &fpt, const vec &dir) const =0
 
virtual int find_embed_vol (const point &fpt, const vec &dir, manip_absvol_treeid *atid) const
 
virtual int range (trajestep &fts, int s_ext, int &sb, PassivePtr< manip_absvol > &faeid) const
 
virtual int range_ext (trajestep &fts, int s_ext) const =0
 
virtual void income (gparticle *)
 
virtual void chname (char *nm) const
 
virtual void print (std::ostream &file, int l) const
 
virtual absvolcopy () const
 
virtual std::vector< manip_absvol * > Gamanip_embed () const
 

Additional Inherited Members

- Static Public Member Functions inherited from Heed::RegPassivePtr
static void set_s_ban_del_ignore (char fs_ban_del_ignore)
 
static char get_s_ban_del_ignore (void)
 
static void set_s_print_adr_cpp (char fs_print_adr_cpp)
 
static char get_s_print_adr_cpp (void)
 
- Public Attributes inherited from Heed::box
vfloat m_dx
 
vfloat m_dy
 
vfloat m_dz
 Lengths of sides.
 
vfloat m_dxh
 
vfloat m_dyh
 
vfloat m_dzh
 Half-lengths of sides.
 
ulsvolume m_ulsv
 
std::string m_name
 
- Public Attributes inherited from Heed::absvol
vfloat prec
 
bool s_sensitive
 
- Protected Member Functions inherited from Heed::box
virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 

Detailed Description

Box "manipulator".

Definition at line 63 of file box.h.

Constructor & Destructor Documentation

◆ manip_box() [1/2]

Heed::manip_box::manip_box ( )
inline

Constructor.

Definition at line 66 of file box.h.

66: manip_absvol(), box() {}
box()
Default constructor.
Definition: box.cpp:24

Referenced by copy().

◆ manip_box() [2/2]

Heed::manip_box::manip_box ( const box f)
inline

Definition at line 67 of file box.h.

67: manip_absvol(), box(f) {}

◆ ~manip_box()

virtual Heed::manip_box::~manip_box ( )
inlinevirtual

Destructor.

Definition at line 69 of file box.h.

69{}

Member Function Documentation

◆ chname()

void Heed::manip_box::chname ( char *  nm) const
virtual

Reimplemented from Heed::box.

Definition at line 268 of file box.cpp.

268 {
269 strcpy(nm, "manip_box: ");
270 strcat(nm, m_name.c_str());
271}
std::string m_name
Definition: box.h:30

Referenced by print().

◆ copy()

manip_box * Heed::manip_box::copy ( ) const
virtual

Reimplemented from Heed::box.

Definition at line 267 of file box.cpp.

267{ return new manip_box(*this); }
manip_box()
Constructor.
Definition: box.h:66

◆ Gavol()

absvol * Heed::manip_box::Gavol ( ) const
virtual

Get the volume.

Implements Heed::manip_absvol.

Definition at line 266 of file box.cpp.

266{ return (box*)this; }

◆ print()

void Heed::manip_box::print ( std::ostream &  file,
int  l 
) const
virtual

Reimplemented from Heed::box.

Definition at line 273 of file box.cpp.

273 {
274 if (l <= 0) return;
275 char s[1000];
276 chname(s);
277 Ifile << "manip_box::print(l=" << l << "): " << s << '\n';
278 l = l - 1;
279 if (l > 0) {
280 indn.n += 2;
281 box::print(file, l);
282 indn.n -= 2;
283 }
284 file.flush();
285}
virtual void print(std::ostream &file, int l) const
Definition: box.cpp:221
virtual void chname(char *nm) const
Definition: box.cpp:268
indentation indn
Definition: prstream.cpp:15
#define Ifile
Definition: prstream.h:196

The documentation for this class was generated from the following files: