Commit c5eb905c authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#9 Add missing Doxygen comments.

parent 856ff037
......@@ -28,6 +28,9 @@ namespace HappyHeart
{
/*!
* \brief A convenient class which holds relevant data to perform a conform interpolation.
*/
class InterpolationData
{
......@@ -65,6 +68,8 @@ namespace HappyHeart
///@}
public:
//! Accessor to source data.
const SourceOrTargetData& GetSourceData() const noexcept;
......@@ -73,10 +78,10 @@ namespace HappyHeart
private:
//!
//! Object which hols all relevant informations about the source.
SourceOrTargetData::unique_ptr source_data_ = nullptr;
//!
//! Object which hols all relevant informations about the target.
SourceOrTargetData::unique_ptr target_data_ = nullptr;
};
......
......@@ -66,15 +66,21 @@ namespace HappyHeart
//! Convenient alias to pairing.
using pairing_type = std::vector<std::pair<Unknown::const_shared_ptr, Unknown::const_shared_ptr>>;
//! Enum class whcih specifies whether a source or a target is considered.
enum class SourceOrTargetDataType { source, target };
/*!
* \class doxygen_hode_source_or_target_data_note
*
* \note Remember these objects go by pair: one is instantiated for the source, the other for the target.
*/
/*!
* \brief Helper object which includes most relevant data about the source or the target space.
*
*
* \copydoc doxygen_hode_source_or_target_data_note
*/
class SourceOrTargetData
{
......@@ -92,7 +98,18 @@ namespace HappyHeart
/// \name Special members.
///@{
//! Constructor.
/*!
* \brief Constructor.
*
* \copydoc doxygen_hode_source_or_target_data_note
*
* \param[in] felt_space \a FEltSpace considered.
* \param[in] numbering_subset \a NumberingSubset considered.
* \param[in] pairing The list of pair source unknown/target unknown to consider. Depending on \a type,
* only either the first or the second element of each pair is actually considered in this class.
* \param[in] type Whether the instantiated object deals with source or target data.
*
*/
explicit SourceOrTargetData(const FEltSpace& felt_space,
const NumberingSubset& numbering_subset,
const pairing_type& pairing,
......@@ -135,9 +152,11 @@ namespace HappyHeart
* This method is intended to be used in specific interpolators, such as P1_to_P2 into which all
* extended unknowns of a given side source/target are expected to share the same numbering subset
* and shape function label.
*
* \param[in] ref_local_felt_pace \a RefLocalFEltSpace for which the \a BasicRefFElt is sought.
*/
const Internal::RefFEltNS::BasicRefFElt&
GetCommonBasicRefFElt(const Internal::RefFEltNS::RefLocalFEltSpace& ref_felt_space) const;
GetCommonBasicRefFElt(const Internal::RefFEltNS::RefLocalFEltSpace& ref_local_felt_space) const;
......
......@@ -36,18 +36,23 @@ namespace HappyHeart
assert("Current interpolator assumes geometric conformity!"
&& source_felt_space.GetGodOfDofFromWeakPtr() == target_felt_space.GetGodOfDofFromWeakPtr());
auto&& source_data = std::make_unique<Advanced::ConformInterpolatorNS::SourceOrTargetData>(source_felt_space,
source_numbering_subset,
pairing_,
Advanced::ConformInterpolatorNS::SourceOrTargetDataType::source);
auto&& target_data = std::make_unique<Advanced::ConformInterpolatorNS::SourceOrTargetData>(target_felt_space,
target_numbering_subset,
pairing_,
Advanced::ConformInterpolatorNS::SourceOrTargetDataType::target);
using type = Advanced::ConformInterpolatorNS::SourceOrTargetData;
auto&& source_data =
std::make_unique<type>(source_felt_space,
source_numbering_subset,
pairing_,
Advanced::ConformInterpolatorNS::SourceOrTargetDataType::source);
interpolation_data_ = std::make_unique<Advanced::ConformInterpolatorNS::InterpolationData>(std::move(source_data),
std::move(target_data));
auto&& target_data =
std::make_unique<type>(target_felt_space,
target_numbering_subset,
pairing_,
Advanced::ConformInterpolatorNS::SourceOrTargetDataType::target);
interpolation_data_ =
std::make_unique<Advanced::ConformInterpolatorNS::InterpolationData>(std::move(source_data),
std::move(target_data));
}
......
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