https://mooseframework.inl.gov
Public Member Functions | Private Attributes | List of all members
AttribRayTracingStudy Class Reference

Attribute for the RayTracingStudy a RayTracingObject is associated with. More...

#include <RayTracingAttributes.h>

Inheritance diagram for AttribRayTracingStudy:
[legend]

Public Member Functions

 AttribRayTracingStudy (TheWarehouse &w, const RayTracingStudy *study)
 
virtual void initFrom (const MooseObject *obj) override
 
virtual bool isMatch (const Attribute &other) const override
 
virtual bool isEqual (const Attribute &other) const override
 
virtual std::unique_ptr< Attributeclone () const override
 
virtual size_t hash () const override
 
bool operator== (const Attribute &other) const
 
bool operator!= (const Attribute &other) const
 
unsigned int id () const
 

Private Attributes

const RayTracingStudy_val
 

Detailed Description

Attribute for the RayTracingStudy a RayTracingObject is associated with.

Definition at line 19 of file RayTracingAttributes.h.

Constructor & Destructor Documentation

◆ AttribRayTracingStudy()

AttribRayTracingStudy::AttribRayTracingStudy ( TheWarehouse w,
const RayTracingStudy study 
)
inline

Definition at line 22 of file RayTracingAttributes.h.

Referenced by clone().

23  : Attribute(w, "ray_tracing_study")
24  {
25  _val = study;
26  }
Attribute(TheWarehouse &w, const std::string name)
const RayTracingStudy * _val

Member Function Documentation

◆ clone()

virtual std::unique_ptr<Attribute> AttribRayTracingStudy::clone ( ) const
inlineoverridevirtual

Implements Attribute.

Definition at line 30 of file RayTracingAttributes.h.

31  {
32  return std::unique_ptr<Attribute>(new AttribRayTracingStudy(*this));
33  }
AttribRayTracingStudy(TheWarehouse &w, const RayTracingStudy *study)

◆ hash()

virtual size_t AttribRayTracingStudy::hash ( ) const
inlineoverridevirtual

Implements Attribute.

Definition at line 34 of file RayTracingAttributes.h.

35  {
36  size_t h = 0;
38  return h;
39  }
void hash_combine(std::size_t &)
const RayTracingStudy * _val

◆ initFrom()

void AttribRayTracingStudy::initFrom ( const MooseObject obj)
overridevirtual

Implements Attribute.

Definition at line 16 of file RayTracingAttributes.C.

17 {
18  const RayTracingObject * rto = dynamic_cast<const RayTracingObject *>(obj);
19  if (rto)
20  _val = &rto->study();
21 }
Base class for a MooseObject used in ray tracing.
RayTracingStudy & study()
The RayTracingStudy associated with this object.
const RayTracingStudy * _val

◆ isEqual()

bool AttribRayTracingStudy::isEqual ( const Attribute other) const
overridevirtual

Implements Attribute.

Definition at line 31 of file RayTracingAttributes.C.

32 {
33  return isMatch(other);
34 }
virtual bool isMatch(const Attribute &other) const override

◆ isMatch()

bool AttribRayTracingStudy::isMatch ( const Attribute other) const
overridevirtual

Implements Attribute.

Definition at line 24 of file RayTracingAttributes.C.

Referenced by isEqual().

25 {
26  auto a = dynamic_cast<const AttribRayTracingStudy *>(&other);
27  return a && (a->_val == _val);
28 }
Attribute for the RayTracingStudy a RayTracingObject is associated with.
const RayTracingStudy * _val

Member Data Documentation

◆ _val

const RayTracingStudy* AttribRayTracingStudy::_val
private

Definition at line 42 of file RayTracingAttributes.h.

Referenced by AttribRayTracingStudy(), hash(), initFrom(), and isMatch().


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