CoMMA 1.3.2
A geometric agglomerator for unstructured meshes
Loading...
Searching...
No Matches
comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType > Class Template Reference

Creator of Neighbourhood_Extended objects. It can create from scratch or by copy. More...

#include <Neighbourhood.h>

Inheritance diagram for comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >:
comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >

Public Types

using CreatorBaseType = NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
 Base class. More...
 
using NeighbourhoodDerivedType = Neighbourhood_Extended< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
 Shortcut for the Neighborhood object derived type (Extended, in this case) More...
 
using NeighbourhoodBaseType = Neighbourhood< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
 Shortcut for the Neighborhood object type. More...
 
- Public Types inherited from comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
using NeighbourhoodBaseType = Neighbourhood< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
 Shortcut for the Neighborhood object type. More...
 

Public Member Functions

 NeighbourhoodExtendedCreator ()
 Constructor. More...
 
 ~NeighbourhoodExtendedCreator () override=default
 Destructor. More...
 
std::shared_ptr< NeighbourhoodBaseTypecreate (const std::unordered_set< CoMMAIndexType > &s_neighbours_of_seed, const std::vector< CoMMAWeightType > &priority_weights, const CoMMAIntType dimension) const override
 Create a new Neighbourhood object from scratch using the given arguments. More...
 
std::shared_ptr< NeighbourhoodBaseTypeclone (std::shared_ptr< NeighbourhoodBaseType > other) const override
 Create a new Neighbourhood object by copy. More...
 
- Public Member Functions inherited from comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >
 NeighbourhoodCreator ()=default
 Constructor. More...
 
virtual ~NeighbourhoodCreator ()=default
 Destructor. More...
 
virtual std::shared_ptr< NeighbourhoodBaseTypecreate (const std::unordered_set< CoMMAIndexType > &s_neighbours_of_seed, const std::vector< CoMMAWeightType > &priority_weights, const CoMMAIntType dimension) const =0
 Create a new Neighbourhood object from scratch using the given arguments. More...
 
virtual std::shared_ptr< NeighbourhoodBaseTypeclone (std::shared_ptr< NeighbourhoodBaseType > other) const =0
 Create a new Neighbourhood object by copy. More...
 

Detailed Description

template<typename CoMMAIndexType, typename CoMMAWeightType, typename CoMMAIntType>
class comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >

Creator of Neighbourhood_Extended objects. It can create from scratch or by copy.

Template Parameters
CoMMAIndexTypethe CoMMA index type for the global index of the mesh
CoMMAWeightTypethe CoMMA weight type for the weights (volume or area) of the nodes or edges of the Mesh
CoMMAIntTypethe CoMMA type for integers

Member Typedef Documentation

◆ CreatorBaseType

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
using comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::CreatorBaseType = NeighbourhoodCreator<CoMMAIndexType, CoMMAWeightType, CoMMAIntType>

Base class.

◆ NeighbourhoodBaseType

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
using comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::NeighbourhoodBaseType = Neighbourhood<CoMMAIndexType, CoMMAWeightType, CoMMAIntType>

Shortcut for the Neighborhood object type.

◆ NeighbourhoodDerivedType

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
using comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::NeighbourhoodDerivedType = Neighbourhood_Extended<CoMMAIndexType, CoMMAWeightType, CoMMAIntType>

Shortcut for the Neighborhood object derived type (Extended, in this case)

Constructor & Destructor Documentation

◆ NeighbourhoodExtendedCreator()

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::NeighbourhoodExtendedCreator ( )
inline

Constructor.

◆ ~NeighbourhoodExtendedCreator()

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::~NeighbourhoodExtendedCreator ( )
overridedefault

Destructor.

Member Function Documentation

◆ clone()

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
std::shared_ptr< NeighbourhoodBaseType > comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::clone ( std::shared_ptr< NeighbourhoodBaseType other) const
inlineoverridevirtual

Create a new Neighbourhood object by copy.

Parameters
[in]otherShared pointer to an existing Neighbourhood object
Returns
a shared pointer (base type) to a new Neighborhood (derived type) object

Implements comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >.

◆ create()

template<typename CoMMAIndexType , typename CoMMAWeightType , typename CoMMAIntType >
std::shared_ptr< NeighbourhoodBaseType > comma::NeighbourhoodExtendedCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >::create ( const std::unordered_set< CoMMAIndexType > &  s_neighbours_of_seed,
const std::vector< CoMMAWeightType > &  priority_weights,
const CoMMAIntType  dimension 
) const
inlineoverridevirtual

Create a new Neighbourhood object from scratch using the given arguments.

Parameters
[in]s_neighbours_of_seedSet of the neighbours of the given cell chosen as seed
[in]priority_weightsWeights used to set up the order of the neighbours to visit
[in]dimensionDimension of the problem
Returns
a shared pointer (base type) to a new Neighborhood (derived type) object

Implements comma::NeighbourhoodCreator< CoMMAIndexType, CoMMAWeightType, CoMMAIntType >.


The documentation for this class was generated from the following file: