|
| | BlockD (Vector< int, DESCRIPTOR::d > size, int padding, Platform platform) |
| |
| virtual | ~BlockD () |
| |
| virtual void | setProcessingContext (ProcessingContext)=0 |
| | Set processing context.
|
| |
| virtual void | resize (Vector< int, DESCRIPTOR::d > size)=0 |
| |
| Platform | getPlatform () const |
| | Return platform used to process lattice.
|
| |
| template<Platform PLATFORM> |
| ConcreteBlockD< T, DESCRIPTOR, PLATFORM > & | asConcrete () |
| |
| template<typename FIELD_TYPE > |
| bool | hasData () |
| | Return whether FIELD_TYPE is available / has been allocated.
|
| |
| template<typename FIELD_TYPE > |
| const auto & | getData (FIELD_TYPE field=FIELD_TYPE{}) const |
| | Return abstract interface for concrete FIELD_TYPE data.
|
| |
| template<typename FIELD_TYPE > |
| auto & | getData (FIELD_TYPE field=FIELD_TYPE{}) |
| | Return abstract interface for concrete FIELD_TYPE data.
|
| |
| template<typename FIELD > |
| const auto & | getField (FIELD field=FIELD{}) const |
| | Return abstract interface for FIELD array.
|
| |
| template<typename FIELD > |
| auto | getField (LatticeR< DESCRIPTOR::d > loc) const |
| | Return value of FIELD at loc.
|
| |
| template<typename FIELD > |
| auto & | getField (FIELD field=FIELD{}) |
| | Return abstract interface for FIELD array.
|
| |
| template<typename FIELD > |
| void | setField (LatticeR< DESCRIPTOR::d > loc, const FieldD< T, DESCRIPTOR, FIELD > &fieldD) |
| | Set FIELD to fieldD at loc.
|
| |
| template<typename FIELD > |
| void | setParameter (FieldD< T, DESCRIPTOR, FIELD > value) |
| | Set value of parameter FIELD.
|
| |
| template<typename PARAMETER , typename FIELD > |
| void | setParameter (AbstractFieldArrayD< T, DESCRIPTOR, FIELD > &fieldArray) |
| |
| template<typename PARAMETER , Platform PLATFORM, typename FIELD > |
| void | setParameter (FieldArrayD< T, DESCRIPTOR, PLATFORM, FIELD > &fieldArray) |
| |
| BlockLatticeRowView< T, DESCRIPTOR > | get (std::size_t iCell) |
| |
| template<typename OPERATOR > |
| void | apply () |
| |
| virtual bool | hasCommunicatable (std::type_index) const =0 |
| |
| virtual Communicatable & | getCommunicatable (std::type_index)=0 |
| |
| | BlockStructureD (Vector< int, D > size, int padding=0) |
| |
| | BlockStructureD () |
| |
| void | resize (Vector< int, D > size) |
| |
| auto | getCore () const |
| |
| int | getNx () const |
| | Read only access to block width.
|
| |
| int | getNy () const |
| | Read only access to block height.
|
| |
| int | getNz () const |
| | Read only access to block height.
|
| |
| LatticeR< D > | getExtent () const |
| |
| int | getPadding () const |
| | Read only access to padding.
|
| |
| std::size_t | getNcells () const |
| | Get number of cells.
|
| |
| CellID | getCellId (LatticeR< D > latticeR) const |
| | Get 1D cell ID.
|
| |
| template<typename... L> |
| std::enable_if_t< sizeof...(L)==D, CellID > | getCellId (L... latticeR) const |
| |
| LatticeR< D > | getLatticeR (CellID iCell) const |
| |
| CellDistance | getNeighborDistance (LatticeR< D > dir) const |
| | Get 1D neighbor distance.
|
| |
| bool | isInside (LatticeR< D > latticeR) const |
| | Return whether location is valid.
|
| |
| bool | isInsideCore (LatticeR< D > latticeR) const |
| | Return whether location is inside core.
|
| |
| bool | isPadding (LatticeR< D > latticeR) const |
| | Return whether location is valid.
|
| |
| bool | isPadding (LatticeR< D > latticeR, int overlap) const |
| |
| bool | isPadding (CellID iCell) const |
| |
| template<typename... L> |
| std::enable_if_t< sizeof...(L)==D, bool > | isInside (L... latticeR) const |
| |
| CellDistance | getNeighborhoodRadius (LatticeR< D > latticeR) const |
| | Return maximum valid neighborhood sphere radius w.r.t. latticeR.
|
| |
| template<typename F > |
| void | forSpatialLocations (F f) const |
| |
| template<typename F > |
| void | forSpatialLocationsParallel (F f) const |
| |
| template<typename F > |
| void | forSpatialLocations (LatticeR< D > min, LatticeR< D > max, F f) const |
| |
| template<typename F > |
| void | forCoreSpatialLocations (F f) const |
| |
| template<typename F > |
| void | forCellIndices (F f) const |
| |
| virtual | ~Serializable ()=default |
| |
| virtual bool * | getBlock (const std::size_t iBlock, std::size_t &sizeBlock, const bool loadingMode=false)=0 |
| | Returns the address of the i-th block and its size.
|
| |
| virtual std::size_t | getNblock () const =0 |
| | Returns the number of blocks.
|
| |
| virtual std::size_t | getSerializableSize () const =0 |
| | Returns the binary size of the data to be saved.
|
| |
| template<bool includeLogOutputDir = true> |
| bool | save (std::string fileName="", const bool enforceUint=false) |
| | Save Serializable into file fileName
|
| |
| template<bool includeLogOutputDir = true> |
| bool | load (std::string fileName="", const bool enforceUint=false) |
| | Load Serializable from file fileName
|
| |
| bool | save (std::uint8_t *buffer) |
| | Save Serializable into buffer of length getSerializableSize
|
| |
| bool | load (const std::uint8_t *buffer) |
| | Load Serializable from buffer of length getSerializableSize
|
| |
| virtual void | postLoad () |
| |
|
| template<typename F > |
| auto | dispatch (F &&f) const |
| | Calls f on concrete implementation of the BlockD interface.
|
| |
| template<typename F > |
| auto | dispatch (F &&f) |
| |
| template<typename DataType > |
| void | registerVar (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, const DataType &data, const size_t arrayLength=1) const |
| | Register primitive data types (int, double, ...) or arrays of those.
|
| |
| template<typename DataType > |
| void | registerSerializableOfConstSize (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, DataType &data, const bool loadingMode=false) |
| | Register Serializable object of constant size.
|
| |
| template<typename DataType > |
| void | registerSerializablesOfConstSize (const std::size_t iBlock, std::size_t &sizeBlock, std::size_t ¤tBlock, bool *&dataPtr, DataType *data, const size_t arrayLength, const bool loadingMode=false) |
| | Register an array of Serializable objects of constant size.
|
| |
template<typename T, typename DESCRIPTOR>
class olb::BlockD< T, DESCRIPTOR >
Definition at line 32 of file operator.h.