AutoPas  3.0.0
Loading...
Searching...
No Matches
VLTraversalInterface.h
Go to the documentation of this file.
1
7#pragma once
8
12
13namespace autopas {
14
21template <class LinkedParticleCell>
23 public:
27 virtual ~VLTraversalInterface() = default;
28
36 std::vector<LinkedParticleCell> &cells,
38 &aosNeighborLists,
39 std::vector<std::vector<size_t, autopas::AlignedAllocator<size_t>>> &soaNeighborLists) {
40 _cells = &cells;
41 _aosNeighborLists = &aosNeighborLists;
42 _soaNeighborLists = &soaNeighborLists;
43 }
44
45 protected:
49 std::vector<LinkedParticleCell> *_cells = nullptr;
58 std::vector<std::vector<size_t, autopas::AlignedAllocator<size_t>>> *_soaNeighborLists = nullptr;
59};
60
61} // namespace autopas
AlignedAllocator class.
Definition: AlignedAllocator.h:29
std::unordered_map< Particle_T *, std::vector< Particle_T * > > NeighborListAoSType
Neighbor list AoS style.
Definition: InteractionListGeneratorFunctor.h:40
This class provides the Traversal Interface for the verlet lists container.
Definition: VLTraversalInterface.h:22
virtual void setCellsAndNeighborLists(std::vector< LinkedParticleCell > &cells, InteractionListGeneratorFunctor< typename LinkedParticleCell::ParticleType, true >::NeighborListAoSType &aosNeighborLists, std::vector< std::vector< size_t, autopas::AlignedAllocator< size_t > > > &soaNeighborLists)
Sets the information the traversal needs for the iteration.
Definition: VLTraversalInterface.h:35
std::vector< LinkedParticleCell > * _cells
The cells of the underlying linked cells container of the verlet lists container.
Definition: VLTraversalInterface.h:49
InteractionListGeneratorFunctor< typenameLinkedParticleCell::ParticleType, true >::NeighborListAoSType * _aosNeighborLists
The AoS neighbor list of the verlet lists container.
Definition: VLTraversalInterface.h:54
std::vector< std::vector< size_t, autopas::AlignedAllocator< size_t > > > * _soaNeighborLists
The SoA neighbor list of the verlet lists container.
Definition: VLTraversalInterface.h:58
virtual ~VLTraversalInterface()=default
Destructor.
This is the main namespace of AutoPas.
Definition: AutoPasDecl.h:34