template<class T> class LayoutData

Data that maintains a one-to-one mapping to the boxes in a BoxLayout

Inheritance:

LayoutData


public members:

LayoutData()
LayoutData(const BoxLayout& dp)
virtual ~LayoutData()
virtual void define(const BoxLayout& dp)
DataIterator dataIterator() const
const T& operator[](const DataIndex& index) const
T& operator[](const DataIndex& index)
Box box(const DataIndex& index) const
const BoxLayout& boxLayout() const

Documentation

A collection of Box-oriented objects. The arrangement of the T objects is given by the underlying BoxLayout object. LayoutData does not attempt to prevent users from manipulating the template class T to become out of synch with the boxes in the BoxLayout. Caveat emptor.

Non-local (off-processor access) to a LayoutData index is an error. you can assure that access to the data stored in a LayoutData is local to your processor by using the DataIterator object for indexing. (In fact, you are pretty much forced to by the

Data in a LayoutData CANNOT be communicated to other processors using the API presented here.

class T must provide the following methods:

  {
    T()
  }
  

This class is useful for processor-local data that needs to be indexable along with a BoxLayoutData. Auxillary data objects, etc.

LayoutData (const BoxLayout& dp)
constructor. allocates a T object for every box in the BoxLayout dp using the T null constructor. dp must be closed.

virtual void define (const BoxLayout& dp)
constructor. allocates a T object for every box in the BoxLayout dp using the T null constructor. dp must be closed. previously stored T objects are removed


this class has no child classes.

alphabetic index hierarchy of classes


Chombo

Copyright Notice

This software is copyright (C) by the Lawrence Berkeley National Laboratory. Permission is granted to reproduce this software for non-commercial purposes provided that this notice is left intact.

It is acknowledged that the U.S. Government has rights to this software under Contract DE-AC03-765F00098 between the U.S. Department of Energy and the University of California.

This software is provided as a professional and academic contribution for joint exchange. Thus it is experimental, is provided ``as is'', with no warranties of any kind whatsoever, no support, no promise of updates, or printed documentation. By using this software, you acknowledge that the Lawrence Berkeley National Laboratory and Regents of the University of California shall have no liability with respect to the infringement of other copyrights by any part of this software.