The SKIRT project
advanced radiative transfer for astrophysics
Public Member Functions | Protected Member Functions | List of all members
PropertyHandlerVisitor Class Referenceabstract

#include <PropertyHandlerVisitor.hpp>

Public Member Functions

virtual ~PropertyHandlerVisitor ()
 
virtual void visitPropertyHandler (BoolPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (DoubleListPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (DoublePropertyHandler *handler)=0
 
virtual void visitPropertyHandler (EnumPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (IntPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (ItemListPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (ItemPropertyHandler *handler)=0
 
virtual void visitPropertyHandler (StringPropertyHandler *handler)=0
 

Protected Member Functions

 PropertyHandlerVisitor ()=default
 

Detailed Description

This is the abstract base class for a visitor of property handlers. It is part of the "visitor" design pattern implementation used to handle properties of various types.

Constructor & Destructor Documentation

◆ PropertyHandlerVisitor()

PropertyHandlerVisitor::PropertyHandlerVisitor ( )
protecteddefault

Constructs a property handler visitor.

◆ ~PropertyHandlerVisitor()

virtual PropertyHandlerVisitor::~PropertyHandlerVisitor ( )
inlinevirtual

Destructs the property handler visitor. This virtual destructor is declared here because PropertyHandlerVisitor is the top-level class in the hierarchy of property handler visitors.

Member Function Documentation

◆ visitPropertyHandler() [1/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( BoolPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [2/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( DoubleListPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [3/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( DoublePropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [4/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( EnumPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [5/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( IntPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [6/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( ItemListPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [7/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( ItemPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.

◆ visitPropertyHandler() [8/8]

virtual void PropertyHandlerVisitor::visitPropertyHandler ( StringPropertyHandler handler)
pure virtual

Visits the specified property handler using the acceptVisitor() function specialization corresponding to the specified type. This function must be implemented in each subclass.


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