InvalidAccessor< structdim, dim, spacedim > Class Template Reference

Inheritance diagram for InvalidAccessor< structdim, dim, spacedim >:

Inheritance graph
[legend]

List of all members.

Public Types

typedef TriaAccessorBase
< structdim, dim, spacedim >
::AccessorData 
AccessorData

Public Member Functions

 InvalidAccessor (const Triangulation< dim, spacedim > *parent=0, const int level=-1, const int index=-1, const AccessorData *local_data=0)
 InvalidAccessor (const InvalidAccessor &)
template<typename OtherAccessor >
 InvalidAccessor (const OtherAccessor &)
void copy_from (const InvalidAccessor &)
bool operator== (const InvalidAccessor &) const
bool operator!= (const InvalidAccessor &) const
void operator++ () const
void operator-- () const
bool used () const
bool has_children () const


Detailed Description

template<int structdim, int dim, int spacedim = dim>
class InvalidAccessor< structdim, dim, spacedim >

A class that represents accessor objects to iterators that don't make sense such as quad iterators in on 1d meshes. This class can not be used to create objects (it will in fact throw an exception if this should ever be attempted but it sometimes allows code to be written in a simpler way in a dimension independent way. For example, it allows to write code that works on quad iterators that is dimension independent because quad iterators (with the current class) exist and are syntactically correct. You can not expect, however, to ever generate one of these iterators, meaning you need to expect to wrap the code block in which you use quad iterators into something like if (dim>1) -- which makes eminent sense anyway.

This class provides the minimal interface necessary for Accessor classes to interact with Iterator classes. However, this is only for syntactic correctness, none of the functions do anything but generate errors.

Author:
Wolfgang Bangerth, 2008

Member Typedef Documentation

template<int structdim, int dim, int spacedim = dim>
typedef TriaAccessorBase<structdim,dim,spacedim>::AccessorData InvalidAccessor< structdim, dim, spacedim >::AccessorData

Propagate typedef from base class to this class.

Reimplemented from TriaAccessorBase< structdim, dim, spacedim >.


Constructor & Destructor Documentation

template<int structdim, int dim, int spacedim = dim>
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor ( const Triangulation< dim, spacedim > *  parent = 0,
const int  level = -1,
const int  index = -1,
const AccessorData local_data = 0 
)

Constructor. This class is used for iterators that make sense in a given dimension, for example quads for 1d meshes. Consequently, while the creation of such objects is syntactically valid, they make no semantic sense, and we generate an exception when such an object is actually generated.

template<int structdim, int dim, int spacedim = dim>
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor ( const InvalidAccessor< structdim, dim, spacedim > &   ) 

Copy constructor. This class is used for iterators that make sense in a given dimension, for example quads for 1d meshes. Consequently, while the creation of such objects is syntactically valid, they make no semantic sense, and we generate an exception when such an object is actually generated.

template<int structdim, int dim, int spacedim>
template<typename OtherAccessor >
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor ( const OtherAccessor &   )  [inline]

Conversion from other accessors to the current invalid one. This of course also leads to a run-time error.

References Assert.


Member Function Documentation

template<int structdim, int dim, int spacedim = dim>
void InvalidAccessor< structdim, dim, spacedim >::copy_from ( const InvalidAccessor< structdim, dim, spacedim > &   ) 

Dummy copy operation.

template<int structdim, int dim, int spacedim = dim>
bool InvalidAccessor< structdim, dim, spacedim >::operator== ( const InvalidAccessor< structdim, dim, spacedim > &   )  const

Dummy comparison operators.

template<int structdim, int dim, int spacedim = dim>
bool InvalidAccessor< structdim, dim, spacedim >::operator!= ( const InvalidAccessor< structdim, dim, spacedim > &   )  const

template<int structdim, int dim, int spacedim = dim>
void InvalidAccessor< structdim, dim, spacedim >::operator++ (  )  const

Dummy operators to make things compile. Does nothing.

template<int structdim, int dim, int spacedim = dim>
void InvalidAccessor< structdim, dim, spacedim >::operator-- (  )  const

template<int structdim, int dim, int spacedim = dim>
bool InvalidAccessor< structdim, dim, spacedim >::used (  )  const

Dummy function representing whether the accessor points to a used or an unused object.

template<int structdim, int dim, int spacedim = dim>
bool InvalidAccessor< structdim, dim, spacedim >::has_children (  )  const

Dummy function representing whether the accessor points to an object that has children.


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

deal.II documentation generated on Sat Aug 15 16:52:03 2009 by doxygen 1.5.9