#ifndef ARRAY_TUPLE_INTERSECTION_HPP_
#define ARRAY_TUPLE_INTERSECTION_HPP_
#include <vector>
#include <memory>
#include "array_tuple_sketch.hpp"
#include "tuple_intersection.hpp"
namespace datasketches {
template<
typename Array,
typename Policy,
typename Allocator = typename Array::allocator_type
>
class array_tuple_intersection: public tuple_intersection<Array, Policy, Allocator> {
public:
using Base = tuple_intersection<Array, Policy, Allocator>;
using CompactSketch = compact_array_tuple_sketch<Array, Allocator>;
using resize_factor = theta_constants::resize_factor;
explicit array_tuple_intersection(uint64_t seed = DEFAULT_SEED, const Policy& policy = Policy(), const Allocator& allocator = Allocator());
CompactSketch get_result(bool ordered = true) const;
};
}
#include "array_tuple_intersection_impl.hpp"
#endif