Reference documentation for deal.II version 9.0.0
quadrature_selector.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2003 - 2017 by the deal.II authors
4 //
5 // This file is part of the deal.II library.
6 //
7 // The deal.II library is free software; you can use it, redistribute
8 // it, and/or modify it under the terms of the GNU Lesser General
9 // Public License as published by the Free Software Foundation; either
10 // version 2.1 of the License, or (at your option) any later version.
11 // The full text of the license can be found in the file LICENSE at
12 // the top level of the deal.II distribution.
13 //
14 // ---------------------------------------------------------------------
15 
16 
17 #ifndef dealii_quadrature_selector_h
18 #define dealii_quadrature_selector_h
19 
20 
21 #include <deal.II/base/quadrature.h>
22 #include <deal.II/base/exceptions.h>
23 
24 #include <string>
25 
26 DEAL_II_NAMESPACE_OPEN
27 
39 template <int dim>
40 class QuadratureSelector : public Quadrature<dim>
41 {
42 public:
48  QuadratureSelector (const std::string &s,
49  const unsigned int order=0);
50 
56  static std::string get_quadrature_names();
57 
68  int,
69  << "You tried to generate a QGauss object with an invalid "
70  << "number " << arg1
71  << " of quadrature points in each coordinate "
72  << "direction. This number must be greater than or equal "
73  << "to 1.");
78  std::string,
79  unsigned int,
80  << "You tried to generate a " << arg1
81  << " object; no order is needed for objects of this kind, but "
82  << arg2 << " was given as argument.");
87  std::string,
88  << arg1
89  << " is not a valid name for a quadrature rule.");
91 private:
97  static
99  create_quadrature (const std::string &s,
100  const unsigned int order);
101 };
102 DEAL_II_NAMESPACE_CLOSE
103 
104 #endif
#define DeclException2(Exception2, type1, type2, outsequence)
Definition: exceptions.h:358
static Quadrature< dim > create_quadrature(const std::string &s, const unsigned int order)
static ::ExceptionBase & ExcInvalidQuadrature(std::string arg1)
static std::string get_quadrature_names()
QuadratureSelector(const std::string &s, const unsigned int order=0)
static ::ExceptionBase & ExcInvalidQGaussOrder(int arg1)
#define DeclException1(Exception1, type1, outsequence)
Definition: exceptions.h:346
static ::ExceptionBase & ExcInvalidOrder(std::string arg1, unsigned int arg2)