Skip to content
Snippets Groups Projects
Commit eaa06736 authored by Santiago Ospina De Los Ríos's avatar Santiago Ospina De Los Ríos
Browse files

Merge branch 'feature/allow-subdomain-indexsets-to-give-index-for-multidomain-entity' into 'master'

Allow subdomain index set to return index for multidomain entities

See merge request !33
parents 9f302e38 4e5f62af
No related branches found
No related tags found
1 merge request!33Allow subdomain index set to return index for multidomain entities
Pipeline #45812 passed
......@@ -69,7 +69,7 @@ public:
template<typename Entity>
IndexType index(const Entity& e) const {
return index<Entity::codimension>(e);
return _mdIndexSet.template index<Entity::codimension>(_grid.domain(),_grid.multiDomainEntity(e));
}
template<int codim, typename Entity>
......
......@@ -611,8 +611,20 @@ public:
return EntityWrapper<EntityType::codimension,dimension,const GridImp>(this,mdEntity);
}
template<typename EntityType>
static const typename MDGrid::template MultiDomainEntity<EntityType>::type& multiDomainEntity(const EntityType& e) {
//! specialization for -parent- multidomain entity
template <
class EntityType,
std::enable_if_t<std::is_same_v<typename MDGrid::Traits::template Codim<EntityType::codimension>::Entity,EntityType>, int> = 0>
static const EntityType&
multiDomainEntity(const EntityType &e) {
return e;
}
template <
class EntityType,
std::enable_if_t<!std::is_same_v<typename MDGrid::Traits::template Codim<EntityType::codimension>::Entity,EntityType>,int> = 0>
static const typename MDGrid::Traits::template Codim<EntityType::codimension>::Entity &
multiDomainEntity(const EntityType &e) {
return e.impl().multiDomainEntity();
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment