HWindowFilterOOC

Functions

HWindowFilterOOC

bool

RejectPointsInMemory

bool

RejectPointsOnDisk

bool

RejectNode

bool

RejectBounding

bool

AcceptPoint

void

AddRectangleWindow

void

AddTriangleWindow

void

ClearWindows

bool

HasWindows

Detailed Description

class HWindowFilterOOC : public ooc::query::Filter

The HWindowFilterOOC class filters OOC points based on window-space areas. These areas can be a combination of rectangles and triangles.

Public Functions

HWindowFilterOOC(bool deep_filter)

Constructs an HWindowFilterOOC object without any window-space areas to filter OOC points with.

Parameters:

deep_filter – Determines whether or not the constructed object will accept OOC points that are not loaded in memory.

virtual bool RejectPointsInMemory() override

Never rejects points in memory.

virtual bool RejectPointsOnDisk() override

Rejects points on disk if deep_filter is not set through the constructor.

virtual bool RejectNode(ooc::NodeHandle const &node_handle) override

Never rejects a node based on its node handle.

virtual bool RejectBounding(ooc::Point const &min_bound, ooc::Point const &max_bound) override

Rejects boundings based on any supplied rectangle or triangle window-space areas. The boundings are projected to window-space and tested against each of these areas. If none overlap, the bounding is rejected.

virtual bool AcceptPoint(ooc::Point const &point, size_t point_index) override

Rejects a point based on any supplied rectangle or triangle window-space areas. The point is projected to window-space and tested against each of these areas. If any of these areas contains the point, it is accepted.

void AddRectangleWindow(HBaseView &view, ooc::Point const &window_min, ooc::Point const &window_max)

Adds a rectangle window-space area to filter points with.

void AddTriangleWindow(HBaseView &view, ooc::Point const &p1, ooc::Point const &p2, ooc::Point const &p3)

Adds a triangle window-space area to filter points with.

void ClearWindows()

Discards all existing rectangle or triangle window-space areas that have been added to this object.

bool HasWindows() const
Returns:

Returns true if this object has any rectangle or triangle window-space areas added to it.