dune-grid  2.9.0
cube.hh
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) DUNE Project contributors, see file LICENSE.md in module root
2 // SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception
3 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
4 // vi: set et ts=4 sw=2 sts=2:
5 #ifndef DUNE_DGF_CUBEBLOCK_HH
6 #define DUNE_DGF_CUBEBLOCK_HH
7 
8 #include <cassert>
9 #include <iostream>
10 #include <vector>
11 
13 
14 
15 namespace Dune
16 {
17 
18  namespace dgf
19  {
20 
21  class CubeBlock
22  : public BasicBlock
23  {
24  unsigned int nofvtx;
25  int dimgrid;
26  bool goodline; // active line describes a vertex
27  std :: vector< unsigned int > map; // active vertex
28  int nofparams;
29  int vtxoffset;
30 
31  public:
32  CubeBlock ( std :: istream &in, int pnofvtx, int pvtxoffset, int &pdimgrid );
33 
34  int get ( std :: vector< std :: vector< unsigned int> > &simplex,
35  std :: vector< std :: vector< double > > &params,
36  int &nofp );
37 
38  // some information
39  bool ok ()
40  {
41  return goodline;
42  }
43 
44  int nofsimplex ()
45  {
46  return noflines();
47  }
48 
49  private:
50  // get the dimension of the grid
51  int getDimGrid ();
52  // get next simplex
53  bool next ( std :: vector< unsigned int > &simplex,
54  std :: vector< double > &param );
55  };
56 
57  } // end namespace dgf
58 
59 } // end namespace Dune
60 
61 #endif
Include standard header files.
Definition: agrid.hh:60
Definition: basic.hh:31
int & noflines()
Definition: basic.hh:87
Definition: cube.hh:23
int get(std ::vector< std ::vector< unsigned int > > &simplex, std ::vector< std ::vector< double > > &params, int &nofp)
Definition: cube.cc:103
int nofsimplex()
Definition: cube.hh:44
bool ok()
Definition: cube.hh:39
CubeBlock(std ::istream &in, int pnofvtx, int pvtxoffset, int &pdimgrid)
Definition: cube.cc:19