Geant4-11
Public Member Functions | Protected Attributes | Friends
G4Visible Class Reference

#include <G4Visible.hh>

Inheritance diagram for G4Visible:
G4Polyhedron G4Polyline G4VMarker G4PolyhedronArbitrary G4PolyhedronBox G4PolyhedronCone G4PolyhedronCons G4PolyhedronEllipsoid G4PolyhedronEllipticalCone G4PolyhedronHype G4PolyhedronHyperbolicMirror G4PolyhedronPara G4PolyhedronParaboloid G4PolyhedronPcon G4PolyhedronPgon G4PolyhedronSphere G4PolyhedronTet G4PolyhedronTorus G4PolyhedronTrap G4PolyhedronTrd1 G4PolyhedronTrd2 G4PolyhedronTube G4PolyhedronTubs G4Circle G4Polymarker G4Square G4Text

Public Member Functions

 G4Visible ()
 
 G4Visible (const G4VisAttributes *)
 
 G4Visible (const G4Visible &)
 
 G4Visible (G4Visible &&)
 
const G4VisAttributesGetVisAttributes () const
 
G4bool operator!= (const G4Visible &right) const
 
G4Visibleoperator= (const G4Visible &)
 
G4Visibleoperator= (G4Visible &&)
 
void SetVisAttributes (const G4VisAttributes &)
 
void SetVisAttributes (const G4VisAttributes *)
 
virtual ~G4Visible ()
 

Protected Attributes

G4bool fAllocatedVisAttributes
 
const G4VisAttributesfpVisAttributes
 

Friends

std::ostream & operator<< (std::ostream &os, const G4Visible &v)
 

Detailed Description

Definition at line 47 of file G4Visible.hh.

Constructor & Destructor Documentation

◆ G4Visible() [1/4]

G4Visible::G4Visible ( )

Definition at line 36 of file G4Visible.cc.

36 :
39{}
const G4VisAttributes * fpVisAttributes
Definition: G4Visible.hh:82
G4bool fAllocatedVisAttributes
Definition: G4Visible.hh:83

◆ G4Visible() [2/4]

G4Visible::G4Visible ( const G4Visible visible)

◆ G4Visible() [3/4]

G4Visible::G4Visible ( G4Visible &&  visible)

Definition at line 48 of file G4Visible.cc.

48 {
51 visible.fpVisAttributes = nullptr;
52 visible.fAllocatedVisAttributes = false;
53}

References fAllocatedVisAttributes, and fpVisAttributes.

◆ G4Visible() [4/4]

G4Visible::G4Visible ( const G4VisAttributes pVA)

Definition at line 55 of file G4Visible.cc.

55 :
56 fpVisAttributes (pVA),
58{}

◆ ~G4Visible()

G4Visible::~G4Visible ( )
virtual

Definition at line 60 of file G4Visible.cc.

60 {
62}

References fAllocatedVisAttributes, and fpVisAttributes.

Member Function Documentation

◆ GetVisAttributes()

const G4VisAttributes * G4Visible::GetVisAttributes ( ) const

◆ operator!=()

G4bool G4Visible::operator!= ( const G4Visible right) const

Definition at line 103 of file G4Visible.cc.

103 {
104 if (fpVisAttributes && right.fpVisAttributes)
105 return *fpVisAttributes != *right.fpVisAttributes;
106 else if (!fpVisAttributes && !right.fpVisAttributes) return false;
107 else return true;
108}

References fpVisAttributes.

◆ operator=() [1/2]

G4Visible & G4Visible::operator= ( const G4Visible rhs)

Definition at line 64 of file G4Visible.cc.

64 {
65 if (&rhs == this) return *this;
68 delete fpVisAttributes;
70 }
72 return *this;
73}

References fAllocatedVisAttributes, and fpVisAttributes.

◆ operator=() [2/2]

G4Visible & G4Visible::operator= ( G4Visible &&  rhs)

Definition at line 75 of file G4Visible.cc.

75 {
76 if (&rhs == this) return *this;
80 rhs.fpVisAttributes = nullptr;
81 rhs.fAllocatedVisAttributes = false;
82 return *this;
83}

References fAllocatedVisAttributes, and fpVisAttributes.

◆ SetVisAttributes() [1/2]

void G4Visible::SetVisAttributes ( const G4VisAttributes VA)

Definition at line 85 of file G4Visible.cc.

85 {
86 // Allocate G4VisAttributes on the heap in case the user specifies a
87 // short-lived VA for a long-lived G4Visible. Flag so that it can
88 // be deleted in the destructor.
89 // First delete any G4VisAttributes already on the heap...
93}

References fAllocatedVisAttributes, and fpVisAttributes.

◆ SetVisAttributes() [2/2]

void G4Visible::SetVisAttributes ( const G4VisAttributes pVA)

Definition at line 96 of file G4Visible.cc.

96 {
97 // First delete any G4VisAttributes already on the heap...
99 fpVisAttributes = pVA;
101}

References fAllocatedVisAttributes, and fpVisAttributes.

Referenced by G4OpenGLSceneHandler::AddCompound(), G4Qt3DSceneHandler::AddCompound(), G4VisCommandSceneAddArrow2D::Arrow2D::Arrow2D(), G4DrawVoxels::ComputeVoxelPolyhedra(), G4AxesModel::Construct(), G4PhysicalVolumeModel::DescribeSolid(), G4GPSModel::DescribeYourselfTo(), G4VFieldModel::DescribeYourselfTo(), G4ScoringBox::Draw(), G4ScoringCylinder::Draw(), G4ScoreLogColorMap::DrawColorChartBar(), G4VScoreColorMap::DrawColorChartBar(), G4ScoreLogColorMap::DrawColorChartText(), G4VScoreColorMap::DrawColorChartText(), G4ScoringBox::DrawColumn(), G4ScoringCylinder::DrawColumn(), G4OpenGLStoredViewer::DrawDisplayLists(), anonymous_namespace{G4LogicalVolumeModel.cc}::DrawPoint(), G4TrajectoryDrawerUtils::DrawWithoutTime(), G4TrajectoryDrawerUtils::DrawWithTime(), G4ArrowModel::G4ArrowModel(), G4VisCommandSceneAddLogo::G4Logo::G4Logo(), G4VisCommandSceneAddLine::Line::Line(), G4VisCommandSceneAddLine2D::Line2D::Line2D(), G4VisCommandSceneAddDate::Date::operator()(), G4VisCommandSceneAddEventID::EventID::operator()(), G4VisCommandSceneAddFrame::Frame::operator()(), G4VisCommandSceneAddLogo2D::Logo2D::operator()(), G4VSceneHandler::RequestPrimitives(), G4VisCommandSceneAddScale::Scale::Scale(), G4VisCommandSceneAddText::SetNewValue(), and G4VisCommandSceneAddText2D::SetNewValue().

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const G4Visible v 
)
friend

Definition at line 110 of file G4Visible.cc.

110 {
111 if (v.fpVisAttributes) return os << *(v.fpVisAttributes);
112 else return os << "No Visualization Attributes";
113}

Field Documentation

◆ fAllocatedVisAttributes

G4bool G4Visible::fAllocatedVisAttributes
protected

Definition at line 83 of file G4Visible.hh.

Referenced by G4Visible(), operator=(), SetVisAttributes(), and ~G4Visible().

◆ fpVisAttributes

const G4VisAttributes* G4Visible::fpVisAttributes
protected

Definition at line 82 of file G4Visible.hh.

Referenced by G4Visible(), operator!=(), operator=(), SetVisAttributes(), and ~G4Visible().


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