Class xlifepp::CompositeDomain#

class CompositeDomain : public xlifepp::GeomDomain#

class to handle union or intersection of domains

Public Functions

CompositeDomain(SetOperationType, const std::vector<const GeomDomain*>&, const string_t&)#

constructor

std::vector<const GeomDomain*> basicDomains() const#

return the list of basic domains (recursive)

return the list of basic domains (MeshDomain or AnalyticalDomain) if in the domains list of current CompositeDomain it appears a CompositeDomain this compositeDomain is also split in basic domains by recursion

Note

there is no difference between union and intersection CompositeDomain

inline virtual CompositeDomain *compositeDomain()#

access to CompositeDomain pointer

inline virtual const CompositeDomain *compositeDomain() const#

access to CompositeDomain pointer (const)

inline const std::vector<const GeomDomain*> &domains() const#

access to list of domains (const)

virtual bool include(const GeomDomain&) const#

true if the current domain includes a given domain (const)

inline virtual bool isIntersection() const#

true if an intersection of domains (const)

virtual bool isSideDomain() const#

true if composite domain is aside domain

true if composite domain is a side domain

inline virtual bool isUnion() const#

true if an union of domains (const)

virtual number_t numberOfElements() const#

number of geometric elements of composite domain is not available

number of geometric elements of composite domain is not available, too complex to compute it

virtual void print(std::ostream&) const#

print CompositeDomain informations

inline SetOperationType setOpType() const#

return type of operation (_union,_intersection)

virtual string_t sortedName() const#

return domain name where composite elements are sorted by name (const)