25 #ifndef GRINS_DIRICHLET_BC_FACTORY_FUNCTION_BASE_H 
   26 #define GRINS_DIRICHLET_BC_FACTORY_FUNCTION_BASE_H 
   34   template<
typename FunctionType>
 
   63     virtual libMesh::UniquePtr<FunctionType>
 
   66                 std::vector<std::string>& var_names,
 
   67                 const std::string& section ) =0;
 
   70     libMesh::UniquePtr<libMesh::DirichletBoundary>
 
   72                              const libMesh::System& system,
 
   73                              libMesh::UniquePtr<FunctionType>& func,
 
   74                              const std::vector<VariableIndex>& var_indices );
 
   83     virtual libMesh::UniquePtr<libMesh::DirichletBoundary> 
create();
 
   89 #endif // GRINS_DIRICHLET_BC_FACTORY_FUNCTION_BASE_H 
libMesh::UniquePtr< libMesh::DirichletBoundary > make_dirichlet_boundary(const std::set< BoundaryID > &bc_ids, const libMesh::System &system, libMesh::UniquePtr< FunctionType > &func, const std::vector< VariableIndex > &var_indices)
Dispatch, based on FunctionType, to the correct DirchletBoundary construction. 
 
virtual libMesh::UniquePtr< FunctionType > build_func(const GetPot &input, MultiphysicsSystem &system, std::vector< std::string > &var_names, const std::string §ion)=0
Builds the FunctionBase object for boundary condition. 
 
DirichletBCFactoryFunctionBase(const std::string &bc_type_name)
 
virtual libMesh::UniquePtr< libMesh::DirichletBoundary > create()
 
Interface with libMesh for solving Multiphysics problems. 
 
~DirichletBCFactoryFunctionBase()
 
virtual const std::vector< std::string > & get_var_names() const 
Helper function that can be overridded in subclasses. 
 
const std::vector< std::string > & active_var_names() const 
Return the var names that are active from this class. 
 
static const FEVariablesBase * _fe_var
The FEVariablesBase class associated with the boundary condition being built.