AutoPas  3.0.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
autopas::TraversalInterface Class Referenceabstract

This interface serves as a common parent class for all traversals. More...

#include <TraversalInterface.h>

Inheritance diagram for autopas::TraversalInterface:
Inheritance graph
[legend]

Public Member Functions

virtual ~TraversalInterface ()=default
 Destructor of TraversalInterface.
 
 TraversalInterface (DataLayoutOption dataLayout, bool useNewton3)
 Constructor of the TraversalInterface.
 
virtual TraversalOption getTraversalType () const =0
 Return a enum representing the name of the traversal class.
 
virtual bool isApplicable () const =0
 Checks if the traversal is applicable to the current state of the domain.
 
virtual void initTraversal ()=0
 Initializes the traversal.
 
virtual void traverseParticles ()=0
 Traverse the particles by pairs, triplets etc.
 
virtual void endTraversal ()=0
 Finalizes the traversal.
 
bool getUseNewton3 () const
 Return whether the traversal uses newton 3.
 
DataLayoutOption getDataLayout () const
 Return the data layout option.
 

Protected Attributes

DataLayoutOption _dataLayout
 The datalayout used by this traversal.
 
bool _useNewton3
 If this traversal makes use of newton3.
 

Detailed Description

This interface serves as a common parent class for all traversals.

Constructor & Destructor Documentation

◆ TraversalInterface()

autopas::TraversalInterface::TraversalInterface ( DataLayoutOption  dataLayout,
bool  useNewton3 
)
inline

Constructor of the TraversalInterface.

Parameters
dataLayoutThe data layout with which this traversal should be initialized.
useNewton3Parameter to specify whether the traversal makes use of newton3 or not.

Member Function Documentation

◆ endTraversal()

virtual void autopas::TraversalInterface::endTraversal ( )
pure virtual

◆ getDataLayout()

DataLayoutOption autopas::TraversalInterface::getDataLayout ( ) const
inline

Return the data layout option.

Returns
the data layout option

◆ getTraversalType()

virtual TraversalOption autopas::TraversalInterface::getTraversalType ( ) const
pure virtual

Return a enum representing the name of the traversal class.

Returns
Enum representing traversal.

Implemented in autopas::DSSequentialTraversal< ParticleCell, Functor >, autopas::LCC01Traversal< ParticleCell, Functor, combineSoA >, autopas::LCC04CombinedSoATraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04HCPTraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC08Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC18Traversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedBalancedTraversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedC02Traversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedTraversal< ParticleCell, PairwiseFunctor >, autopas::OTC01Traversal< Particle_T, PairwiseFunctor >, autopas::OTC18Traversal< Particle_T, PairwiseFunctor >, autopas::VCLC01BalancedTraversal< Particle_T, PairwiseFunctor >, autopas::VCLC06Traversal< ParticleCell, PairwiseFunctor >, autopas::VCLClusterIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedBalancedTraversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedC02Traversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedTraversal< ParticleCell, PairwiseFunctor >, autopas::VVLAsBuildTraversal< ParticleCell, Particle_T, PairwiseFunctor >, autopas::VLListIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VLCC01Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC08Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC18Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCCellPairC08Traversal< ParticleCell, PairwiseFunctor >, autopas::VLCSlicedBalancedTraversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCSlicedC02Traversal< ParticleCell, PairwiseFunctor, NeighborList >, and autopas::VLCSlicedTraversal< ParticleCell, PairwiseFunctor, NeighborList >.

◆ getUseNewton3()

bool autopas::TraversalInterface::getUseNewton3 ( ) const
inline

Return whether the traversal uses newton 3.

Returns
true iff newton 3 is used.

◆ initTraversal()

virtual void autopas::TraversalInterface::initTraversal ( )
pure virtual

◆ isApplicable()

virtual bool autopas::TraversalInterface::isApplicable ( ) const
pure virtual

Checks if the traversal is applicable to the current state of the domain.

Returns
true iff the traversal can be applied.

Implemented in autopas::SlicedBasedTraversal< ParticleCell, Functor >, autopas::SlicedBasedTraversal< ParticleCell, PairwiseFunctor >, autopas::SlicedC02BasedTraversal< ParticleCell, Functor >, autopas::SlicedC02BasedTraversal< ParticleCell, PairwiseFunctor >, autopas::DSSequentialTraversal< ParticleCell, Functor >, autopas::LCC01Traversal< ParticleCell, Functor, combineSoA >, autopas::LCC04CombinedSoATraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04HCPTraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC08Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC18Traversal< ParticleCell, PairwiseFunctor >, autopas::OTC01Traversal< Particle_T, PairwiseFunctor >, autopas::OTC18Traversal< Particle_T, PairwiseFunctor >, autopas::VCLC01BalancedTraversal< Particle_T, PairwiseFunctor >, autopas::VCLC06Traversal< ParticleCell, PairwiseFunctor >, autopas::VCLClusterIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VVLAsBuildTraversal< ParticleCell, Particle_T, PairwiseFunctor >, autopas::VLListIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VLCC01Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC08Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC18Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCCellPairC08Traversal< ParticleCell, PairwiseFunctor >, autopas::VLCSlicedBalancedTraversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCSlicedC02Traversal< ParticleCell, PairwiseFunctor, NeighborList >, and autopas::VLCSlicedTraversal< ParticleCell, PairwiseFunctor, NeighborList >.

◆ traverseParticles()

virtual void autopas::TraversalInterface::traverseParticles ( )
pure virtual

Traverse the particles by pairs, triplets etc.

as determined by the Functor type.

Implemented in autopas::DSSequentialTraversal< ParticleCell, Functor >, autopas::LCC01Traversal< ParticleCell, Functor, combineSoA >, autopas::LCC04CombinedSoATraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04HCPTraversal< ParticleCell, PairwiseFunctor >, autopas::LCC04Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC08Traversal< ParticleCell, PairwiseFunctor >, autopas::LCC18Traversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedBalancedTraversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedC02Traversal< ParticleCell, PairwiseFunctor >, autopas::LCSlicedTraversal< ParticleCell, PairwiseFunctor >, autopas::OTC01Traversal< Particle_T, PairwiseFunctor >, autopas::OTC18Traversal< Particle_T, PairwiseFunctor >, autopas::VCLC01BalancedTraversal< Particle_T, PairwiseFunctor >, autopas::VCLC06Traversal< ParticleCell, PairwiseFunctor >, autopas::VCLClusterIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedBalancedTraversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedC02Traversal< ParticleCell, PairwiseFunctor >, autopas::VCLSlicedTraversal< ParticleCell, PairwiseFunctor >, autopas::VVLAsBuildTraversal< ParticleCell, Particle_T, PairwiseFunctor >, autopas::VLListIterationTraversal< ParticleCell, PairwiseFunctor >, autopas::VLCC01Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC08Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCC18Traversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCCellPairC08Traversal< ParticleCell, PairwiseFunctor >, autopas::VLCSlicedBalancedTraversal< ParticleCell, PairwiseFunctor, NeighborList >, autopas::VLCSlicedC02Traversal< ParticleCell, PairwiseFunctor, NeighborList >, and autopas::VLCSlicedTraversal< ParticleCell, PairwiseFunctor, NeighborList >.


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