class ngraph::Mask

each element in vector represents dimension and each element in set is an id of dimensions which contains zeros.

#include <mask_attribute.hpp>

class Mask:
    public std::vector< std::set< uint64_t > >,
    public std::enable_shared_from_this< Mask >
{
public:
    // typedefs

    typedef std::shared_ptr<Mask> Ptr;

    // construction

    Mask();
    Mask();
    Mask();
    Mask(, );
    Mask();
    Mask();

    // methods

    static const ::ov::DiscreteTypeInfo& get_type_info_static();
    bool all_dims_are_empty() const;
    std::vector<size_t> get_not_empty_dims();
    bool is_shape_like() const;
    voidbool set_shape_like();
    voidMask \*const copy_value_from_mask();
    voidMask \*const copy_value_from_mask_reversed();

    voidMask \*constconst std::set<int64_t>&const bool copy_value_from_mask_reversed_masked(
        ,
        ,

        );

    Mask::PtrMask \*const intersect_masks_reversed() const;
    Mask::PtrMask \*const union_masks_reversed() const;

    voidconst ngraph::Mask \*constint64_tuint64_tuint64_t copy_and_slice_mask_from(
        ,
        ,
        ,

        );

    boolconst std::function<bool(Mask::Ptr)>&Mask::Ptr add_callback(, );
    boolMask::Ptr apply_callback();
    void invalidate();
    void clean_dim_values();
    void initialize_dependencies();
    bool adjust_value() const;
};