EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EicCadWizard Class Reference

#include <EicRoot/blob/master/eic/cad/wizard/EicCadWizard.h>

+ Inheritance diagram for EicCadWizard:
+ Collaboration diagram for EicCadWizard:

Public Member Functions

 EicCadWizard ()
 
 ~EicCadWizard ()
 
EicCadWizardFileAddSourceFile (const char *fname, const char *material)
 
int ConvertSourceFilesToRoot (void)
 
int AccountRootFile (const TString &fname)
 
void AddRootDirectory (const char *dname)
 
int AssembleRootFiles (const char *dirname=0, const char *detname="DUMMY")
 
int SplitAndRescaleSourceFile (const TString &fname)
 
void CreateRegularTGeoCompositeShape (void)
 

Public Attributes

std::vector< EicCadWizardFile * > mSourceFiles
 
std::vector< TString > mRootFiles
 

Private Member Functions

int ConvertSourceFileToRoot (const TString &fname, EicCadWizardFileConfig *config, const std::vector< std::pair< EicCadWizardCut *, bool > > *tried_cuts)
 
int ConvertSourceFileToRoot (EicCadWizardFile *wfile, const std::vector< std::pair< EicCadWizardCut *, bool > > *tried_cuts)
 
int ConvertSourceDirectoryToRoot (const char *dname, EicCadWizardFileConfig *config, const std::vector< std::pair< EicCadWizardCut *, bool > > *tried_cuts)
 
int StraightforwardSplit (const STEPControl_Reader &cReader, const char *bname)
 
int FaceGuidedSplit (const STEPControl_Reader &cReader, const char *bname, EicCadWizardFileConfig *config, const std::vector< std::pair< EicCadWizardCut *, bool > > *tried_cuts)
 
int FlatSurfaceSplit (const STEPControl_Reader &cReader, const char *bname, EicCadWizardFileConfig *config, const std::vector< std::pair< EicCadWizardCut *, bool > > *tried_cuts)
 
Bool_t IsElementaryFace (const TopoDS_Face &face) const
 
Bool_t IsKnownFace (const TopoDS_Face &face) const
 
EicCadWizardCutGetCut (const TopoDS_Face &face, const gp_Pnt *bcenter, double bradius)
 
int CreateStlSolidRootFile (const TopoDS_Shape &solid, const char *bname, EicCadWizardFileConfig *config)
 
int CreateGhostSolidRootFile (const TopoDS_Shape &solid, const char *bname, EicCadWizardFileConfig *config)
 
int CreateBooleanSolidRootFile (const TopoDS_Shape &solid, const gp_Pnt *bcenter, double bradius, const std::vector< std::pair< EicCadWizardCut *, bool > > *cuts, const char *bname, EicCadWizardFileConfig *config)
 
 ClassDef (EicCadWizard, 3)
 

Private Attributes

bool mCreateEicCompositeShape
 

Detailed Description

Definition at line 76 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 76 of file EicCadWizard.h

Constructor & Destructor Documentation

EicCadWizard::EicCadWizard ( )
inline

Definition at line 78 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 78 of file EicCadWizard.h

EicCadWizard::~EicCadWizard ( )
inline

Definition at line 79 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 79 of file EicCadWizard.h

Member Function Documentation

int EicCadWizard::AccountRootFile ( const TString &  fname)

Definition at line 221 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 221 of file EicCadWizard.cxx

References mRootFiles.

Referenced by AddRootDirectory(), ConvertSourceFileToRoot(), CreateBooleanSolidRootFile(), CreateGhostSolidRootFile(), and CreateStlSolidRootFile().

+ Here is the caller graph for this function:

void EicCadWizard::AddRootDirectory ( const char *  dname)

Definition at line 266 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 266 of file EicCadWizard.cxx

References _DOT_ROOT_, _DOT_SPLIT_, AccountRootFile(), and printf().

Referenced by AssembleRootFiles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

EicCadWizardFile * EicCadWizard::AddSourceFile ( const char *  fname,
const char *  material 
)

Definition at line 61 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 61 of file EicCadWizard.cxx

References mSourceFiles.

int EicCadWizard::AssembleRootFiles ( const char *  dirname = 0,
const char *  detname = "DUMMY" 
)
EicCadWizard::ClassDef ( EicCadWizard  ,
 
)
private
int EicCadWizard::ConvertSourceDirectoryToRoot ( const char *  dname,
EicCadWizardFileConfig config,
const std::vector< std::pair< EicCadWizardCut *, bool > > *  tried_cuts 
)
private

Definition at line 186 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 186 of file EicCadWizard.cxx

References _DOT_STEP_, configureMap::config, and ConvertSourceFileToRoot().

Referenced by ConvertSourceFileToRoot(), and FlatSurfaceSplit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicCadWizard::ConvertSourceFilesToRoot ( void  )

Definition at line 93 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 93 of file EicCadWizard.cxx

References ConvertSourceFileToRoot(), and mSourceFiles.

+ Here is the call graph for this function:

int EicCadWizard::ConvertSourceFileToRoot ( const TString &  fname,
EicCadWizardFileConfig config,
const std::vector< std::pair< EicCadWizardCut *, bool > > *  tried_cuts 
)
private

Definition at line 486 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 486 of file EicCadWizard.cxx

References _DOT_STEP_, AccountRootFile(), ConvertSourceDirectoryToRoot(), FaceGuidedSplit(), printf(), propagation_timing::rfile, and StraightforwardSplit().

Referenced by ConvertSourceDirectoryToRoot(), ConvertSourceFilesToRoot(), ConvertSourceFileToRoot(), FaceGuidedSplit(), and FlatSurfaceSplit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicCadWizard::ConvertSourceFileToRoot ( EicCadWizardFile wfile,
const std::vector< std::pair< EicCadWizardCut *, bool > > *  tried_cuts 
)
private

Definition at line 1338 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 1338 of file EicCadWizard.cxx

References EicCadWizardFile::config(), ConvertSourceFileToRoot(), and EicCadWizardFile::GetFileName().

+ Here is the call graph for this function:

int EicCadWizard::CreateBooleanSolidRootFile ( const TopoDS_Shape &  solid,
const gp_Pnt *  bcenter,
double  bradius,
const std::vector< std::pair< EicCadWizardCut *, bool > > *  cuts,
const char *  bname,
EicCadWizardFileConfig config 
)
private

Definition at line 1160 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 1160 of file EicCadWizard.cxx

References AccountRootFile(), EicNamePatternHub< T >::AddPatternMatch(), EicCadFileConfig::CreateMediaHub(), EicGeoParData::FinalizeOutput(), EicMediaHub::fSingleMedium, EicGeoParData::GetColorTable(), EicCadWizardFileConfig::GetStlQualityCoefficient(), EicGeoParData::GetTopVolume(), EicGeoParData::GetTransparencyTable(), EicMediaHub::Init(), EicCompositeShape::LocalFillBuffer3D(), mCreateEicCompositeShape, EicCadFileConfig::mhub(), EicCadWizardFileConfig::mMaterial, printf(), EicGeoParData::SetFileName(), and etm::solid.

Referenced by FaceGuidedSplit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicCadWizard::CreateGhostSolidRootFile ( const TopoDS_Shape &  solid,
const char *  bname,
EicCadWizardFileConfig config 
)
private

Definition at line 1260 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 1260 of file EicCadWizard.cxx

References AccountRootFile(), EicNamePatternHub< T >::AddPatternMatch(), EicCadFileConfig::CreateMediaHub(), EicGeoParData::FinalizeOutput(), EicMediaHub::fSingleMedium, EicGeoParData::GetColorTable(), EicCadWizardFileConfig::GetStlQualityCoefficient(), EicGeoParData::GetTopVolume(), EicGeoParData::GetTransparencyTable(), EicMediaHub::Init(), EicCompositeShape::LocalFillBuffer3D(), EicCadFileConfig::mhub(), and EicGeoParData::SetFileName().

Referenced by FaceGuidedSplit(), and FlatSurfaceSplit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void EicCadWizard::CreateRegularTGeoCompositeShape ( void  )
inline

Definition at line 101 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 101 of file EicCadWizard.h

int EicCadWizard::CreateStlSolidRootFile ( const TopoDS_Shape &  solid,
const char *  bname,
EicCadWizardFileConfig config 
)
private

Definition at line 1089 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 1089 of file EicCadWizard.cxx

References AccountRootFile(), EicNamePatternHub< T >::AddPatternMatch(), EicCadFileConfig::CreateMediaHub(), EicStlFactory::CreateRootFile(), EicGeoParData::FinalizeOutput(), EicGeoParData::GetColorTable(), EicCadWizardFileConfig::GetStlQualityCoefficient(), EicGeoParData::GetTopVolume(), EicGeoParData::GetTransparencyTable(), EicMediaHub::Init(), EicCadFileConfig::mhub(), EicCadWizardFileConfig::mMaterial, and EicGeoParData::SetFileName().

Referenced by FaceGuidedSplit(), and FlatSurfaceSplit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicCadWizard::FaceGuidedSplit ( const STEPControl_Reader &  cReader,
const char *  bname,
EicCadWizardFileConfig config,
const std::vector< std::pair< EicCadWizardCut *, bool > > *  tried_cuts 
)
private
EicCadWizardCut * EicCadWizard::GetCut ( const TopoDS_Face &  face,
const gp_Pnt *  bcenter,
double  bradius 
)
private

Definition at line 146 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 146 of file EicCadWizard.cxx

Referenced by FaceGuidedSplit(), and FlatSurfaceSplit().

+ Here is the caller graph for this function:

Bool_t EicCadWizard::IsElementaryFace ( const TopoDS_Face &  face) const
private

Definition at line 114 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 114 of file EicCadWizard.cxx

Referenced by FaceGuidedSplit(), FlatSurfaceSplit(), and IsKnownFace().

+ Here is the caller graph for this function:

Bool_t EicCadWizard::IsKnownFace ( const TopoDS_Face &  face) const
private

Definition at line 127 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 127 of file EicCadWizard.cxx

References IsElementaryFace().

+ Here is the call graph for this function:

int EicCadWizard::SplitAndRescaleSourceFile ( const TString &  fname)

Definition at line 412 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 412 of file EicCadWizard.cxx

References _DOT_STEP_, printf(), and etm::solid.

+ Here is the call graph for this function:

int EicCadWizard::StraightforwardSplit ( const STEPControl_Reader &  cReader,
const char *  bname 
)
private

Definition at line 1305 of file EicCadWizard.cxx.

View newest version in sPHENIX GitHub at line 1305 of file EicCadWizard.cxx

Referenced by ConvertSourceFileToRoot().

+ Here is the caller graph for this function:

Member Data Documentation

bool EicCadWizard::mCreateEicCompositeShape
private

Definition at line 101 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 101 of file EicCadWizard.h

Referenced by CreateBooleanSolidRootFile().

std::vector<TString> EicCadWizard::mRootFiles

Definition at line 97 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 97 of file EicCadWizard.h

Referenced by AccountRootFile(), and AssembleRootFiles().

std::vector<EicCadWizardFile*> EicCadWizard::mSourceFiles

Definition at line 86 of file EicCadWizard.h.

View newest version in sPHENIX GitHub at line 86 of file EicCadWizard.h

Referenced by AddSourceFile(), and ConvertSourceFilesToRoot().


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