Commit 4cee9af0 authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#882 FiniteElementSpace: make the method that use...

#882 FiniteElementSpace: make the method that use RefFEltNS::Private::RefFEltSpace private. The only case in which public status was required was solved by a friendship.
parent 9d7d9738
......@@ -9,14 +9,16 @@
# include "Utilities/Containers/Print.hpp"
# include "Utilities/SparseMatrix/CSRPattern.hpp"
# include "Utilities/Mutex/Mutex.hpp"
# include "Utilities/Mpi/Mpi.hpp"
# include "Core/InputParameterData/InputParameterList.hpp"
# include "Core/InputParameter/FElt/FEltSpace.hpp"
# include "Core/NumberingSubset.hpp"
# include "Core/ParameterType.hpp"
# include "Geometry/DomainManager.hpp"
# include "Core/NumberingSubset.hpp"
# include "FiniteElement/FiniteElementSpace/Private/BreakCircularDependancy.hpp"
# include "FiniteElement/FiniteElementSpace/Private/FEltSpace.hpp"
# include "FiniteElement/FiniteElementSpace/Private/FEltSpaceStorage.hpp"
......@@ -93,6 +95,29 @@ namespace HappyHeart
} // namespace Private
namespace ParameterNS
{
namespace Policy
{
template
<
ParameterNS::Type TypeT,
unsigned int Ndim
>
class AtDof;
} // namespace Policy
} // namespace ParameterNS
// ============================
// End of forward declarations.
//! \endcond IGNORE_BLOCK_IN_DOXYGEN
......@@ -163,6 +188,15 @@ namespace HappyHeart
//! Friendship to GodOfDof (which stores the FEltSpace defined on its related mesh).
friend GodOfDof;
//! Friendship to AtDof parameter policy, which requires access to \a BasicRefFElt \as ShapeFunction() method.
template
<
ParameterNS::Type TypeT,
unsigned int Ndim
>
friend class ParameterNS::Policy::AtDof;
public:
......@@ -306,6 +340,7 @@ namespace HappyHeart
*/
const LocalFEltSpacePerRefFEltSpace& GetLocalFEltSpacePerRefFEltSpace(const Domain& domain) const;
private:
/*!
* \brief Get the list of local finite element spaces sort for a given RefFEltSpace.
......@@ -313,6 +348,9 @@ namespace HappyHeart
const LocalFEltSpace::per_geom_elt_index&
GetLocalFEltSpaceList(const RefFEltNS::Private::RefFEltSpace& ref_felt_space) const;
public:
/*!
* \brief Get the local felt space that matches a given \a geometric_elt.
*/
......@@ -388,6 +426,8 @@ namespace HappyHeart
//! Clear the temporary data used to build properly the Private::Local2GlobalStorage objects.
void ClearTemporaryData() const noexcept;
private:
/*!
* \brief Get the reference finite element space related to a given \a ref_geom_elt.
*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment