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

#include <box.h>

+ Inheritance diagram for Heed::sh_manip_box:

Public Member Functions

 sh_manip_box ()
 Constructor.
 
 sh_manip_box (const box &f)
 
 sh_manip_box (const abssyscoor &fcsys, const box &fbx)
 
virtual ~sh_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 sh_manip_boxcopy () const
 
- Public Member Functions inherited from Heed::sh_manip_absvol
virtual const abssyscoorGasc () const
 Get the coordinate system.
 
void Psc (const fixsyscoor &fcsys)
 
 sh_manip_absvol ()
 
 sh_manip_absvol (sh_manip_absvol &f)
 
 sh_manip_absvol (const sh_manip_absvol &f)
 
 sh_manip_absvol (const abssyscoor &f)
 
 sh_manip_absvol (const point &fc, const basis &fbas, const std::string &fname)
 
virtual ~sh_manip_absvol ()
 
virtual void m_chname (char *nm) const
 
virtual void m_print (std::ostream &file, int l) const
 
virtual sh_manip_absvolcopy () 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
 

Protected Member Functions

virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 
virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 
virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 

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 Attributes inherited from Heed::sh_manip_absvol
fixsyscoor csys
 
absrefaref_ptr [1]
 

Detailed Description

Definition at line 79 of file box.h.

Constructor & Destructor Documentation

◆ sh_manip_box() [1/3]

Heed::sh_manip_box::sh_manip_box ( )
inline

Constructor.

Definition at line 82 of file box.h.

82: sh_manip_absvol(), box() {}
box()
Default constructor.
Definition: box.cpp:24

Referenced by copy().

◆ sh_manip_box() [2/3]

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

Definition at line 83 of file box.h.

83: sh_manip_absvol(), box(f) {}

◆ sh_manip_box() [3/3]

Heed::sh_manip_box::sh_manip_box ( const abssyscoor fcsys,
const box fbx 
)
inline

Definition at line 84 of file box.h.

85 : sh_manip_absvol(fcsys), box(fbx) {}

◆ ~sh_manip_box()

virtual Heed::sh_manip_box::~sh_manip_box ( )
inlinevirtual

Destructor.

Definition at line 87 of file box.h.

87{}

Member Function Documentation

◆ chname()

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

Reimplemented from Heed::box.

Definition at line 299 of file box.cpp.

299 {
300 strcpy(nm, "sh_manip_box: ");
301 strcat(nm, m_name.c_str());
302}
std::string m_name
Definition: box.h:30

Referenced by print().

◆ copy()

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

Reimplemented from Heed::box.

Definition at line 298 of file box.cpp.

298{ return new sh_manip_box(*this); }
sh_manip_box()
Constructor.
Definition: box.h:82

◆ Gavol()

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

Get the volume.

Implements Heed::manip_absvol.

Definition at line 290 of file box.cpp.

290 {
291 return dynamic_cast<box*>(const_cast<sh_manip_box*>(this));
292}

◆ get_components()

void Heed::sh_manip_box::get_components ( ActivePtr< absref_transmit > &  aref_tran)
protectedvirtual

Reimplemented from Heed::box.

Definition at line 294 of file box.cpp.

294 {
296}
virtual void get_components(ActivePtr< absref_transmit > &aref_tran)
Definition: volume.cpp:257

◆ print()

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

Reimplemented from Heed::box.

Definition at line 304 of file box.cpp.

304 {
305 if (l <= 0) return;
306 char s[1000];
307 chname(s);
308 Ifile << "sh_manip_box::print(l=" << l << "): " << s << '\n';
309 l = l - 1;
310 if (l > 0) {
311 indn.n += 2;
312 csys.print(file, l);
313 box::print(file, l);
314 indn.n -= 2;
315 }
316 file.flush();
317}
virtual void print(std::ostream &file, int l) const
Definition: box.cpp:221
virtual void print(std::ostream &file, int l) const
Definition: vec.cpp:480
fixsyscoor csys
Definition: volume.h:218
virtual void chname(char *nm) const
Definition: box.cpp:299
indentation indn
Definition: prstream.cpp:15
#define Ifile
Definition: prstream.h:196

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