Commit 17c89969 authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#9 Contrary to what I thought, Doxygen doesn't mark explicitly as internal the...

#9 Contrary to what I thought, Doxygen doesn't mark explicitly as internal the comments preffixed by \internal (this is used merely to drop this code should an option in the Dox file be activated).
parent ca381d35
......@@ -19,7 +19,7 @@ namespace HappyHeart
/*!
* \brief Specific case of GlobalMatrix which is square and diagonal.
*
* \internal Actually there is not much here that signes the diagonal structure of the matrix, save the fact only one
* \internal <b><tt>[internal]</tt></b> Actually there is not much here that signes the diagonal structure of the matrix, save the fact only one
* numbering subset is used for both rows and columns. However, AllocateGlobalMatrix() provides an overload for
* this type that allocates only values on the diagonal.
*/
......
......@@ -59,7 +59,7 @@ namespace HappyHeart
/*!
* \brief Returns the requested numbering subset from \a object when T is not a pointer or smart pointer.
*
* \internal The dispatch is static: all is known at compile-time.
* \internal <b><tt>[internal]</tt></b> The dispatch is static: all is known at compile-time.
*/
template<class T>
std::enable_if_t
......@@ -88,7 +88,7 @@ namespace HappyHeart
/*!
* \brief Returns the requested numbering subset pair from \a object when T is not a pointer or smart pointer.
*
* \internal The dispatch is static: all is known at compile-time.
* \internal <b><tt>[internal]</tt></b> The dispatch is static: all is known at compile-time.
*/
template<class T>
std::enable_if_t
......
......@@ -22,7 +22,7 @@ namespace HappyHeart
*
* \attention This is an abstract class; in your model you are probably seeking a TimeManagerInstance.
*
* \internal Must not be confused with TimeKeep() which is a chronometer to evaluate efficiency of the code.
* \internal <b><tt>[internal]</tt></b> Must not be confused with TimeKeep() which is a chronometer to evaluate efficiency of the code.
*/
class TimeManager
{
......@@ -75,7 +75,7 @@ namespace HappyHeart
/*!
* \brief Set whether the system is static or dynamic.
*
* \internal Only a Model should be able to call this method.
* \internal <b><tt>[internal]</tt></b> Only a Model should be able to call this method.
*/
void SetStaticOrDynamic(StaticOrDynamic value);
......
......@@ -260,7 +260,7 @@ namespace HappyHeart
/*!
* \brief Initial values associated to each dof.
*
* \internal When this data is created, dofs aren't yet given their program-wise index, so both std::map and
* \internal <b><tt>[internal]</tt></b> When this data is created, dofs aren't yet given their program-wise index, so both std::map and
* std::unordered_map would be very unreliable here.
*
* All dofs are considered here, regardless of their numbering subset.
......
......@@ -45,7 +45,7 @@ namespace HappyHeart
/*!
* \brief Alias for call back.
*
* \internal As very few variables are expected, a std::map is used rather than a std::unordered_map.
* \internal <b><tt>[internal]</tt></b> As very few variables are expected, a std::map is used rather than a std::unordered_map.
* This choice might be questioned: I read once that for more than 3 keys the has map is alreadyy more efficient...
*/
using CallBack = std::map<std::string, FunctionPrototype>;
......
......@@ -168,7 +168,7 @@ namespace HappyHeart
* \param[in] do_consider_processor_wise_local_2_global If yes, compute local -> global processor-wise index. This
* is not necessary for all global operators, so do not clutter space when it doesn't matter.
*
* \internal Processor- and program-wise local2global arrays are actually stored in two different containers.
* \internal <b><tt>[internal]</tt></b> Processor- and program-wise local2global arrays are actually stored in two different containers.
*/
void InitLocal2Global(const NumberingSubset::vector_const_shared_ptr& numbering_subset_list,
DoConsiderProcessorWiseLocal2Global do_consider_processor_wise_local_2_global);
......@@ -217,7 +217,7 @@ namespace HappyHeart
/*!
* \brief Add a new finite element and returns a non-constant reference to it.
*
* \internal This method should only be called within friend CreateNodeListHelper.
* \internal <b><tt>[internal]</tt></b> This method should only be called within friend CreateNodeListHelper.
*/
FElt& AddFElt(const RefFEltNS::Private::RefFEltInFEltSpace& ref_felt);
......@@ -297,7 +297,7 @@ namespace HappyHeart
/*!
* \brief Returns whether the \a felt is in \a domain or not.
*
* \internal felt object here just returns its underlying geometric_element; it's upon this one
* \internal <b><tt>[internal]</tt></b> felt object here just returns its underlying geometric_element; it's upon this one
* the test is really performed (domain is a purely geometruc concept).
*/
bool IsLocalFEltSpaceInDomain(const LocalFEltSpace& felt_list, const Domain& domain) noexcept;
......
......@@ -144,7 +144,7 @@ namespace HappyHeart
* This method is supposed to be called by each operator, that asks upon its creation that the
* local2global it will need are correctly built.
*
* \internal This method is const because actual local2global storage is mutable; the reason for such a
* \internal <b><tt>[internal]</tt></b> This method is const because actual local2global storage is mutable; the reason for such a
* choice is that it would have require to remove constness to GodOfDof and FEltSpace within a Model
* or a VariationalFormulation solely for the purpose of populating the local2global during the initialisation
* of the program.
......@@ -193,14 +193,14 @@ namespace HappyHeart
*
* This list is given in the same order as the one used to build the \a local_2_global_.
*
* \internal As we are in a low-level class, indexes are used rather than shared_ptr.
* \internal <b><tt>[internal]</tt></b> As we are in a low-level class, indexes are used rather than shared_ptr.
*/
std::vector<unsigned int> unknown_id_list_;
/*!
* \brief Smaller local2global that encompass only a subset of the unknowns of the numbering subset.
*
* \internal This data attribute is populated during the construction of GlobalVariationalOperator:
* \internal <b><tt>[internal]</tt></b> This data attribute is populated during the construction of GlobalVariationalOperator:
* in the constructor they notify the finite element space of the Local2Global arrays they will need,
* and the finite element spaces delegate the call to present class to store it if not already known.
* The reason present attribute is mutable is that this call from the operators is the only one that
......
......@@ -165,7 +165,7 @@ namespace HappyHeart
/*!
* \brief Constructor.
*
* \internal This constructor is private as finite element spaces should be built with the factory function
* \internal <b><tt>[internal]</tt></b> This constructor is private as finite element spaces should be built with the factory function
* Create().
*
* \param[in] domain Geometric domain upon which the finite element space is defined.
......@@ -242,7 +242,7 @@ namespace HappyHeart
* \param[in] unknown_list List of unknowns handled by the global variational operator which called the present
* method. This list is splitted per numbering subset, and for each of them a local2global array is computed.
*
* \internal Despite its constness, this method actually modifies one aspect of the FEltSpace: the local2global
* \internal <b><tt>[internal]</tt></b> Despite its constness, this method actually modifies one aspect of the FEltSpace: the local2global
* array is computed and stored within a deep class which specific attribute is mutable. The reason for this
* is that I would have to renounce to the constness of FEltSpace elsewhere otherwise only for an operation
* that happens in the very beginning of the program, in the initialization phase.
......@@ -265,7 +265,7 @@ namespace HappyHeart
* \param[in] dof_unique_id_list List of all dofs unique ids involved in the finite element space before the
* partitioning occurs. All those still present will be put into \a dof_list_ container.
*
* \internal Should only be called in GodOfDof::Init().
* \internal <b><tt>[internal]</tt></b> Should only be called in GodOfDof::Init().
*/
void ComputeDofList(const std::vector<unsigned int>& dof_unique_id_list);
......@@ -361,7 +361,7 @@ namespace HappyHeart
/*!
* \brief Get the reference finite element space related to a given \a ref_geom_elt.
*
* \internal This method assumes there is one; it is checked by an assert in debug mode.
* \internal <b><tt>[internal]</tt></b> This method assumes there is one; it is checked by an assert in debug mode.
*/
const RefFEltNS::Private::RefFEltSpace& GetRefFEltSpace(const RefGeomElt& ref_geom_elt) const;
......@@ -370,7 +370,7 @@ namespace HappyHeart
/*!
* \brief Prepare the finite element list from the mesh and the domain.
*
* \internal This method is called in the constructor and should not be called again afterwards.
* \internal <b><tt>[internal]</tt></b> This method is called in the constructor and should not be called again afterwards.
*
* \param[in] mesh Geometric mesh region upon which the GodOfDof in which the finite element space
* is defined is built.
......@@ -446,7 +446,7 @@ namespace HappyHeart
/*!
* \brief List of numbering subsets considered.
*
* \internal Could have been computed from \a unknown_storage_, but it is convenient to get it stored
* \internal <b><tt>[internal]</tt></b> Could have been computed from \a unknown_storage_, but it is convenient to get it stored
* independently.
*
*/
......
......@@ -259,7 +259,7 @@ namespace HappyHeart
/*!
* \brief Register a \a quadrature_rule, and do nothing if it is already known.
*
* \internal The method is const because the registration is mutable: said registration is the only non-read
* \internal <b><tt>[internal]</tt></b> The method is const because the registration is mutable: said registration is the only non-read
* action some objects such as operators should be able to perform upon finite element space (and hence upon
* god of dof).
*/
......@@ -359,7 +359,7 @@ namespace HappyHeart
/*!
* \brief Set for each concerned dof the associated value from a Dirichlet boundary condition.
*
* \internal Boundary conditions have not been discussed deeply yet and so essential ones are still
* \internal <b><tt>[internal]</tt></b> Boundary conditions have not been discussed deeply yet and so essential ones are still
* handled à la Felisce (which is not necessarily a bad thing here).
* However, we depart much for the handling of natural ones.
*/
......@@ -434,7 +434,7 @@ namespace HappyHeart
/*!
* \brief Third part of the Init() method, which mostly settles the data reduction to processor-sie.
*
* \internal This part is compiled.
* \internal <b><tt>[internal]</tt></b> This part is compiled.
*/
void Init3(DoConsiderProcessorWiseLocal2Global do_consider_proc_wise_local_2_global,
const std::map<unsigned int, std::vector<unsigned int>>& dof_list_per_felt_space);
......@@ -481,7 +481,7 @@ namespace HappyHeart
*
* Ghosted are excluded and handled in ghosted_dof_list_.
*
* \internal This information is redundant with the one from node_per_felt_,
* \internal <b><tt>[internal]</tt></b> This information is redundant with the one from node_per_felt_,
* but it allows to use a slicker interface (direct loop instead of three imbricated ones). // \todo #258
*/
Dof::vector_shared_ptr processor_wise_dof_list_;
......@@ -489,7 +489,7 @@ namespace HappyHeart
/*!
* \brief List of processor-wise dofs.
*
* \internal This information is redundant with the one from node_per_felt_,
* \internal <b><tt>[internal]</tt></b> This information is redundant with the one from node_per_felt_,
* but it allows to use a slicker interface (direct loop instead of three imbricated ones).//\todo #258
*/
Dof::vector_shared_ptr ghosted_dof_list_;
......@@ -506,7 +506,7 @@ namespace HappyHeart
/*!
* \brief Keep track of which quadrature rules have been used for the related mesh.
*
* \internal The data is mutable because the registration occurs in operators, which otherwise should only
* \internal <b><tt>[internal]</tt></b> The data is mutable because the registration occurs in operators, which otherwise should only
* be allowed to read data from both finite element space and god of dof.
*/
mutable Private::QuadratureRuleTracker::unique_ptr quadrature_rule_tracker_ = nullptr;
......
......@@ -51,7 +51,7 @@ namespace HappyHeart
/*!
* \brief Computes the matrix pattern.
*
* \internal This is actually a struct to ease the syntax of friendship declaration in NodeBearer class.
* \internal <b><tt>[internal]</tt></b> This is actually a struct to ease the syntax of friendship declaration in NodeBearer class.
*
*/
struct ComputeMatrixPattern
......
......@@ -30,7 +30,7 @@ namespace HappyHeart
/*
*! \brief Convenient alias.
*
* \internal Unordered map use the address and not the NodeBearer object in its hash table.
* \internal <b><tt>[internal]</tt></b> Unordered map use the address and not the NodeBearer object in its hash table.
*/
using connectivity_type = std::unordered_map<NodeBearer::shared_ptr, NodeBearer::vector_shared_ptr>;
......
......@@ -178,7 +178,7 @@ namespace HappyHeart
/*!
* \brief Number of (program-wise) dofs considered.
*
* \internal It should be noticed that when the object is created the number of processor-wise dofs
* \internal <b><tt>[internal]</tt></b> It should be noticed that when the object is created the number of processor-wise dofs
* is not known.
*/
unsigned int Nprogram_wise_dof_ = 0u;
......
......@@ -34,7 +34,7 @@ namespace HappyHeart
/*!
* \brief Return the domain that is associated to a given finite element space.
*
* \internal A factory function is used here due to the \a UniqueIdT template parameter: C++ grammar doesn't
* \internal <b><tt>[internal]</tt></b> A factory function is used here due to the \a UniqueIdT template parameter: C++ grammar doesn't
* allow an explicit template parameter in a non-template class constructor.
*
* \param[in] input_parameter_data Object that packs the data read from the input parameter file.
......
......@@ -125,7 +125,7 @@ namespace HappyHeart
/*!
* \brief Non constant access to the finite element storage per domain.
*
* \internal This method is nonetheless marked const as the quantity accessed is mutable.
* \internal <b><tt>[internal]</tt></b> This method is nonetheless marked const as the quantity accessed is mutable.
*/
std::unordered_map<unsigned int, Impl::InternalStorage>& GetNonCstFEltStoragePerDomain() const;
......@@ -141,7 +141,7 @@ namespace HappyHeart
*
* The key is the UniqueId of a Domain, which is given by the method Domain::GetUniqueId().
*
* \internal The mutable keyword is there because GetLocalFEltSpacePerRefFEltSpace(const Domain&) may have
* \internal <b><tt>[internal]</tt></b> The mutable keyword is there because GetLocalFEltSpacePerRefFEltSpace(const Domain&) may have
* to compute its content on the fly. No other method should be allowed to modify it!
*/
mutable std::unordered_map<unsigned int, Impl::InternalStorage> felt_storage_per_domain_;
......
......@@ -50,7 +50,7 @@ namespace HappyHeart
*
* There is a struct to ease friendship declaration.
*
* \internal It should not be called directly; it is called under the hood by ComputeDofIndexes()
* \internal <b><tt>[internal]</tt></b> It should not be called directly; it is called under the hood by ComputeDofIndexes()
* in the Private namespace.
*
*/
......
......@@ -141,7 +141,7 @@ namespace HappyHeart
/*!
* \brief Numbering subset.
*
* \internal Not that relevant in release as in FEltSpace current object is stored in a container
* \internal <b><tt>[internal]</tt></b> Not that relevant in release as in FEltSpace current object is stored in a container
* which key is numbering subset index.
*/
const NumberingSubset& numbering_subset_;
......
......@@ -28,7 +28,7 @@ namespace HappyHeart
/*!
* \brief This class keep tracks on all the quadrature rules that have been used.
*
* \internal It is intended to be a private member of GodOfDof which can tell which quadrature rules have
* \internal <b><tt>[internal]</tt></b> It is intended to be a private member of GodOfDof which can tell which quadrature rules have
* been used by at least one operator.
*/
class QuadratureRuleTracker
......
......@@ -49,7 +49,7 @@ namespace HappyHeart
* \attention the list of processor-wise node bearers is not computed here because it already was
* when the pattern of the global matrix was computed.
*
* \internal The only reason there is a class that encompass the two static methods is privilege access:
* \internal <b><tt>[internal]</tt></b> The only reason there is a class that encompass the two static methods is privilege access:
* I wanted to forbid the public call of FEltStorage::GetNonCstLocalFEltSpacePerRefFEltSpace(). However
* such a data was required; so FEltStorage holds a friendship to present class to circumvent that.
*/
......
......@@ -124,7 +124,7 @@ namespace HappyHeart
/*!
* \brief Whether the current dof is present in \a numbering_subset.
*
* \internal Such a check is made by looking into program_wise_index_per_numbering_subset_: the processor-wise
* \internal <b><tt>[internal]</tt></b> Such a check is made by looking into program_wise_index_per_numbering_subset_: the processor-wise
* counterpart might have been left empty if not required by the model.
*/
bool IsInNumberingSubset(const NumberingSubset& numbering_subset) const;
......@@ -132,7 +132,7 @@ namespace HappyHeart
/*!
* \brief Return a pointer to the node bearer to which the current dof belongs to.
*
* \internal No reference on purpose here: node_bearer_ is stored as a weak_ptr not to introduce circular
* \internal <b><tt>[internal]</tt></b> No reference on purpose here: node_bearer_ is stored as a weak_ptr not to introduce circular
* dependancy.
*/
std::shared_ptr<const NodeBearer> GetNodeBearerFromWeakPtr() const;
......@@ -195,7 +195,7 @@ namespace HappyHeart
/*!
* \brief List of the unique ids of all numbering subsets that cover this dof.
*
* \internal It is only intended for dev/debug purposes, hence the NDEBUG and the very unusual public status.
* \internal <b><tt>[internal]</tt></b> It is only intended for dev/debug purposes, hence the NDEBUG and the very unusual public status.
*/
std::vector<unsigned int> numbering_subset_index_list_;
# endif // NDEBUG
......
......@@ -104,7 +104,7 @@ namespace HappyHeart
*
* \param[in] interface Interface onto which the node is built.
*
* \internal index is given as a std::size_t as in practice it will be the size of the list
* \internal <b><tt>[internal]</tt></b> index is given as a std::size_t as in practice it will be the size of the list
* that will be passed to this constructor:
* \code
* node_list_.push_back(std::make_shared<Node>(interface, node_list_.size()));
......@@ -136,7 +136,7 @@ namespace HappyHeart
/*!
* \brief Returns the list of Nodes matching the given unknown.
*
* \internal This method is expected to be used only in init phase, hence the brutal return by value of a vector.
* \internal <b><tt>[internal]</tt></b> This method is expected to be used only in init phase, hence the brutal return by value of a vector.
*/
Node::vector_shared_ptr GetNodeList(const Unknown& unknown) const;
......@@ -179,7 +179,7 @@ namespace HappyHeart
/*!
* \brief Add a new node.
*
* \internal It is assumed here the node does not exist yet; such liabilities are handled by the class in charge
* \internal <b><tt>[internal]</tt></b> It is assumed here the node does not exist yet; such liabilities are handled by the class in charge
* of actually calling such methods (\a CreateNodeListHelper).
*/
Node::shared_ptr AddNode(const ExtendedUnknown& extended_unknown,
......
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