DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
Array.hpp File Reference

Core 2D variable-length array container with five data layouts. More...

#include <cassert>
#include <memory>
#include <vector>
#include <iostream>
#include <typeinfo>
#include <utility>
#include <fmt/core.h>
#include "Defines.hpp"
#include "ArrayBasic.hpp"
#include "DeviceStorage.hpp"
#include "DeviceView.hpp"
#include "SerializerBase.hpp"
#include "SerializerJSON.hpp"
#include "Vector.hpp"
Include dependency graph for Array.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  DNDS::Array< T, _row_size, _row_max, _align >
 Core 2D variable-length array container, the storage foundation of DNDSR. More...
 
struct  DNDS::Array< T, _row_size, _row_max, _align >::ReadSerializerMetaResult
 Result type for ReadSerializerMeta. More...
 
class  DNDS::Array< T, _row_size, _row_max, _align >::iterator< B >
 Random-access iterator over rows for a given device backend. More...
 

Namespaces

namespace  DNDS
 the host side operators are provided as implemented
 

Macros

#define DNDS_ARRAY_HPP
 

Detailed Description

Core 2D variable-length array container with five data layouts.

Unit Test Coverage (test_Array.cpp)
  • All 5 layouts: TABLE_StaticFixed, TABLE_Fixed, TABLE_StaticMax, TABLE_Max, CSR
  • Resize, ResizeRow, Size, RowSize, RowSizeMax, GetDataLayout
  • Element access: operator(), operator[]
  • DataSize, DataSizeBytes
  • Compress / Decompress round-trip (CSR)
  • clone, CopyData, copy constructor, SwapData
  • WriteSerializer / ReadSerializer (JSON, 3 layouts)
  • GetArraySignature, ParseArraySignatureTuple, ArraySignatureIsCompatible
  • hash
Not Yet Tested
  • ReserveRow, RawDataVector, view, FullSizeBytes, operator<<
  • WriteSerializer / ReadSerializer with TABLE_StaticMax, TABLE_Max
  • to_host / to_device / clear_device / deviceView (CUDA)
  • Move semantics

Definition in file Array.hpp.

Macro Definition Documentation

◆ DNDS_ARRAY_HPP

#define DNDS_ARRAY_HPP

Definition at line 22 of file Array.hpp.