PPL Logo

ck-core/ckarrayindex.h File Reference

Go to the source code of this file.

Namespaces

namespace  ck

Data Structures

struct  CkArrayIndexBase
 Base class for array index objects used in charm. More...
struct  CkArrayID
struct  CkIndex2D
class  CkArrayIndex2D
class  CkArrayIndex3D
class  CkArrayIndex4D
class  CkArrayIndex5D
class  CkArrayIndex6D
class  CkArrayIndexT< object >
 A slightly more complex array index: the key is an object whose size is fixed at compile time. More...
class  ck::ArrayIndexCompressor
class  ck::FixedArrayIndexCompressor

Typedefs

typedef CkArrayIndex CkArrayIndexMax
 Support applications and other charm codes that still use the (now dead) CkArrayIndexMax class to manipulate array indices.

Functions

 PUPbytes (CkArrayIndexBase) class CkArrayIndex
 Actual array index class intended for regular use.
 PUPmarshall (CkArrayID) typedef int CkIndex1D
 PUPbytes (CkIndex2D) typedef struct
 PUPbytes (CkIndex3D) typedef struct
 PUPbytes (CkIndex4D) typedef struct
 PUPbytes (CkIndex5D) typedef struct
 PUPbytes (CkIndex6D) typedef struct
 PUPbytes (CkIndexMax) class CkArrayIndex1D
 Simple ArrayIndex classes: the key is just integer indices.

Variables

 CkIndex3D
 CkIndex4D
 CkIndex5D
 CkIndex6D
 CkIndexMax


Typedef Documentation

typedef CkArrayIndex CkArrayIndexMax

Support applications and other charm codes that still use the (now dead) CkArrayIndexMax class to manipulate array indices.

All the functionality is now incorporated into the CkArrayIndex base class itself.

It is recommended that newer code directly use the base class when there is need to handle an array index.

Todo:
: After at least one minor release announcing the deprecation, CkArrayIndexMax should no longer be supported.

Definition at line 248 of file ckarrayindex.h.


Function Documentation

PUPbytes ( CkArrayIndexBase   ) 

Actual array index class intended for regular use.

Warning:
: Put all data members in base class or they may not be transmitted in envelopes or callbacks (basically in any entity that stores indices in a union). Only add behaviors to this class.

Default

Create array index of 'ndims' dimensions with given size for each dimension

Create array index of 'ndims' dimensions with same size 'val' for each dimension

Return a pointer to the actual index data

Return a const pointer to the actual index data

Return the dimension size

Return a pointer to the short index data

Return a const pointer to the short index data

Return the total number of elements (assuming a dense chare array)

Used for debug prints elsewhere

Equality comparison

These routines allow CkArrayIndex to be used in a CkHashtableT

Todo:
: Chee Wai Lee had a FIXME note attached to this method because he felt it was a temporary solution

A very crude comparison operator to enable using in comparison-based containers

Definition at line 71 of file ckarrayindex.h.

References PUP::a, PUP::b, circleShift(), CmiPrintf(), PUP::d, data, dims, getDimension(), _CmiObjId::id, idx, index, init(), lhs, ndims, operator==(), print(), PUP::u, PUP::w, and x.

Here is the call graph for this function:

PUPmarshall ( CkArrayID   ) 

PUPbytes ( CkIndex2D   ) 

Definition at line 291 of file ckarrayindex.h.

PUPbytes ( CkIndex3D   ) 

Definition at line 293 of file ckarrayindex.h.

PUPbytes ( CkIndex4D   ) 

Definition at line 295 of file ckarrayindex.h.

PUPbytes ( CkIndex5D   ) 

Definition at line 297 of file ckarrayindex.h.

PUPbytes ( CkIndex6D   ) 

Definition at line 299 of file ckarrayindex.h.

PUPbytes ( CkIndexMax   ) 

Simple ArrayIndex classes: the key is just integer indices.

Definition at line 301 of file ckarrayindex.h.

References init().

Here is the call graph for this function:


Variable Documentation

Definition at line 292 of file ckarrayindex.h.

Definition at line 294 of file ckarrayindex.h.

Definition at line 296 of file ckarrayindex.h.

Definition at line 298 of file ckarrayindex.h.

Definition at line 300 of file ckarrayindex.h.


Generated on Mon Sep 21 07:57:21 2020 for Charm++ by  doxygen 1.5.5