15#ifndef dealii_fe_component_mask_h
16#define dealii_fe_component_mask_h
95 template <
typename =
void>
97 "Implicit conversions from std::vector<bool> to ComponentMask are deprecated!")
125 set(const
unsigned int index, const
bool value);
152 operator[](const
unsigned int component_index) const;
181 numbers::invalid_unsigned_int) const;
191 numbers::invalid_unsigned_int) const;
238 "The number of selected components in a mask "
239 "must be greater than zero.");
249 friend
std::ostream &
277 : component_mask(component_mask)
282 const bool initializer)
283 : component_mask(n_components, initializer)
340 [](
const bool selected) { return selected; });
381 else if (
mask.component_mask.empty())
404 else if (
mask.component_mask.empty())
bool operator[](const unsigned int component_index) const
bool represents_n_components(const unsigned int n) const
ComponentMask operator&(const ComponentMask &mask) const
void set(const unsigned int index, const bool value)
std::size_t memory_consumption() const
bool represents_the_all_selected_mask() const
bool operator!=(const ComponentMask &mask) const
std::vector< bool > component_mask
unsigned int size() const
unsigned int n_selected_components(const unsigned int overall_number_of_components=numbers::invalid_unsigned_int) const
ComponentMask operator|(const ComponentMask &mask) const
unsigned int first_selected_component(const unsigned int overall_number_of_components=numbers::invalid_unsigned_int) const
bool operator==(const ComponentMask &mask) const
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_DEPRECATED_WITH_COMMENT(comment)
#define DEAL_II_NAMESPACE_CLOSE
#define Assert(cond, exc)
#define AssertDimension(dim1, dim2)
#define AssertIndexRange(index, range)
#define DeclExceptionMsg(Exception, defaulttext)
static ::ExceptionBase & ExcNoComponentSelected()
static ::ExceptionBase & ExcMessage(std::string arg1)
constexpr unsigned int invalid_unsigned_int