Newer
Older
// ============================================================================
// == ==
// == AMDiS - Adaptive multidimensional simulations ==
// == ==

Thomas Witkowski
committed
// == http://www.amdis-fem.org ==
// == ==
// ============================================================================

Thomas Witkowski
committed
//
// Software License for AMDiS
//
// Copyright (c) 2010 Dresden University of Technology
// All rights reserved.
// Authors: Simon Vey, Thomas Witkowski et al.
//
// This file is part of AMDiS
//
// See also license.opensource.txt in the distribution.
/** \file ElementInfo.h */
#ifndef AMDIS_ELEMENTINFO_H
#define AMDIS_ELEMENTINFO_H
#include <list>
#include <vector>
#include "VertexInfo.h"
#include "Boundary.h"
#include "Projection.h"
/// Stores information for one element.
{
public:
/// Dimension specific constructor for DimVec creation.
ElementInfo(int dim)
: vertices(dim),
vertexInfo(dim, NO_INIT),
boundary(dim, NO_INIT),
projection(dim, NO_INIT),
neighbour(dim, NO_INIT),
surfaceRegions(dim, NO_INIT)
/// Vertex infos for each element vertex.
DimVec< std::list<VertexInfo>::iterator> vertexInfo;
/// Boundary type for each side.
DimVec<BoundaryType> boundary;
/// Boundary projector for each side.
DimVec<Projection*> projection;
/// Neighbour output index for each side.
DimVec<int> neighbour;
/// Element type. Used in 3d.
unsigned char type;
///
int elementRegion;
///
DimVec<int> surfaceRegions;
};