Garfield++ v1r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
volume.h File Reference
#include <iostream>
#include "wcpplib/geometry/vec.h"
#include "wcpplib/geometry/trajestep.h"
#include "wcpplib/safetl/AbsArr.h"
#include "wcpplib/safetl/AbsList.h"
#include "wcpplib/safetl/AbsPtr.h"

Go to the source code of this file.

Classes

class  manip_absvol_eid
 
class  manip_absvol_treeid
 
class  absvol
 
class  absref_transmit_2fixsyscoor
 
class  absref_transmit_fixsyscoor
 
class  absref_transmit_absvol
 
class  manip_absvol
 
class  sh_manip_absvol
 
class  absref_transmit_2manip
 
class  absref_transmit_manip
 

Macros

#define pqamvol   10
 

Functions

int operator== (manip_absvol_treeid &tid1, manip_absvol_treeid &tid2)
 
int operator!= (manip_absvol_treeid &tid1, manip_absvol_treeid &tid2)
 

Macro Definition Documentation

◆ pqamvol

#define pqamvol   10

Definition at line 27 of file volume.h.

Function Documentation

◆ operator!=()

int operator!= ( manip_absvol_treeid tid1,
manip_absvol_treeid tid2 
)
inline

Definition at line 80 of file volume.h.

80 {
81 if (tid1 == tid2) return 0;
82 return 1;
83}

◆ operator==()

int operator== ( manip_absvol_treeid tid1,
manip_absvol_treeid tid2 
)

Definition at line 64 of file volume.cpp.

56 {
57 // checks total route
58 // first to make fast rejection
59 if (tid1.qeid != tid2.qeid) return 0;
60 if (tid1.G_laeid()->nembed != tid2.G_laeid()->nembed) return 0;
61 if (tid1.G_lamvol() != tid2.G_lamvol()) return 0;
62 // more thoroughly
63 for (int n = 0; n < tid1.qeid - 1; ++n) {
64 // the last is checked
65 if (tid1.eid[n].amvol.get() != tid2.eid[n].amvol.get()) return 0;
66 }
67 return 1;
68}
PassivePtr< manip_absvol > amvol
Definition: volume.h:39
const manip_absvol_eid * G_laeid() const
Definition: volume.h:54
manip_absvol_eid eid[pqamvol]
Definition: volume.h:52
manip_absvol * G_lamvol() const
Definition: volume.h:58