# PhasicFlow: indexContainer< IndexType > Class Template Reference

indexContainer< IndexType > Class Template Reference
Inheritance diagram for indexContainer< IndexType >:
[legend]

## Classes

class | IndexAccessor

## Public Types

using | DualViewType = Kokkos::DualView< IndexType * >
using | DeviceViewType = typename DualViewType::t_dev
using | HostViewType = typename DualViewType::t_host

## Public Member Functions

| indexContainer ()
| indexContainer (IndexType begin, IndexType end)
| indexContainer (IndexType *data, int32 numElems)
| indexContainer (const indexContainer &)=default
indexContainer & | operator= (const indexContainer &)=default
| ~indexContainer ()=default
INLINE_FUNCTION_HD size_t | size () const
INLINE_FUNCTION_HD size_t | empty () const
INLINE_FUNCTION_HD IndexType | min () const
INLINE_FUNCTION_HD IndexType | max () const
template<typename executionSpace >
INLINE_FUNCTION_HD IndexType | operator() (selectSide< executionSpace >, int32 i) const
const HostViewType & | hostView () const
const DeviceViewType & | deviceView () const
auto | indicesHost () const
auto | indicesDevice () const

## Protected Attributes

int32 | min_ = 0
int32 | max_ = 0
size_t | size_ = 0
DualViewType | views_

## Detailed Description

### template<typename IndexType>
class pFlow::indexContainer< IndexType >

Definition at line 34 of file indexContainer.hpp.

## Member Typedef Documentation

## DualViewType

using DualViewType = Kokkos::DualView<IndexType*>

Definition at line 38 of file indexContainer.hpp.

## DeviceViewType

using DeviceViewType = typename DualViewType::t_dev

Definition at line 41 of file indexContainer.hpp.

## HostViewType

using HostViewType = typename DualViewType::t_host

Definition at line 44 of file indexContainer.hpp.

## Constructor & Destructor Documentation

## indexContainer() [1/4]

indexContainer | ( |  | ) |

inline

Definition at line 73 of file indexContainer.hpp.

## indexContainer() [2/4]

indexContainer | ( | IndexType | begin,
|  | IndexType | end
| ) |  |

inline

Definition at line 76 of file indexContainer.hpp.

## indexContainer() [3/4]

indexContainer | ( | IndexType * | data,
|  | int32 | numElems
| ) |  |

inline

Definition at line 88 of file indexContainer.hpp.

## indexContainer() [4/4]

indexContainer | ( | const indexContainer< IndexType > & |  | ) |

default

## ~indexContainer()

~indexContainer | ( |  | ) |

default

## Member Function Documentation

## operator=()

indexContainer& operator= | ( | const indexContainer< IndexType > & |  | ) |

default

## size()

INLINE_FUNCTION_HD size_t size | ( |  | ) | const

inline

Definition at line 107 of file indexContainer.hpp.

Referenced by dynamicPointStructure::dynamicPointStructure(), Vector< word, vecAllocator< word > >::insertSetElement(), VectorSingle< realx3, void >::insertSetElement(), VectorDual< int8 >::insertSetElement(), sphereParticles::insertSphereParticles(), and sphereParticles::sphereParticles().

Here is the caller graph for this function:

## empty()

INLINE_FUNCTION_HD size_t empty | ( |  | ) | const

inline

Definition at line 113 of file indexContainer.hpp.

Referenced by VectorSingle< realx3, void >::insertSetElement().

Here is the caller graph for this function:

## min()

INLINE_FUNCTION_HD IndexType min | ( |  | ) | const

inline

Definition at line 119 of file indexContainer.hpp.

Referenced by VectorDual< int8 >::insertSetElement().

Here is the caller graph for this function:

## max()

INLINE_FUNCTION_HD IndexType max | ( |  | ) | const

inline

Definition at line 125 of file indexContainer.hpp.

Referenced by VectorSingle< realx3, void >::insertSetElement(), and VectorDual< int8 >::insertSetElement().

Here is the caller graph for this function:

## operator()()

INLINE_FUNCTION_HD IndexType operator() | ( | selectSide< executionSpace > | ,
|  | int32 | i
| ) |  | const

inline

Definition at line 132 of file indexContainer.hpp.

## hostView()

const HostViewType& hostView | ( |  | ) | const

inline

Definition at line 143 of file indexContainer.hpp.

Referenced by pointStructure::insertedPointIndexH(), Vector< word, vecAllocator< word > >::insertSetElement(), VectorSingle< realx3, void >::insertSetElement(), and VectorDual< int8 >::insertSetElement().

Here is the caller graph for this function:

## deviceView()

const DeviceViewType& deviceView | ( |  | ) | const

inline

Definition at line 148 of file indexContainer.hpp.

Referenced by pointStructure::insertedPointIndexD(), VectorSingle< realx3, void >::insertSetElement(), and VectorDual< int8 >::insertSetElement().

Here is the caller graph for this function:

## indicesHost()

auto indicesHost | ( |  | ) | const

inline

Definition at line 153 of file indexContainer.hpp.

Referenced by dynamicPointStructure::dynamicPointStructure(), and sphereParticles::sphereParticles().

Here is the caller graph for this function:

## indicesDevice()

auto indicesDevice | ( |  | ) | const

inline

Definition at line 158 of file indexContainer.hpp.

## Member Data Documentation

## min_

int32 min_ = 0

protected

Definition at line 65 of file indexContainer.hpp.

Referenced by indexContainer< int32 >::indexContainer(), and indexContainer< int32 >::min().

## max_

int32 max_ = 0

protected

Definition at line 66 of file indexContainer.hpp.

Referenced by indexContainer< int32 >::indexContainer(), and indexContainer< int32 >::max().

## size_

size_t size_ = 0

protected

Definition at line 67 of file indexContainer.hpp.

Referenced by indexContainer< int32 >::empty(), indexContainer< int32 >::indexContainer(), and indexContainer< int32 >::size().

## views_

DualViewType views_

protected

Definition at line 69 of file indexContainer.hpp.

Referenced by indexContainer< int32 >::deviceView(), indexContainer< int32 >::hostView(), indexContainer< int32 >::indexContainer(), indexContainer< int32 >::indicesDevice(), indexContainer< int32 >::indicesHost(), and indexContainer< int32 >::operator()().

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

- src/phasicFlow/containers/indexContainer/indexContainer.hpp