Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::canvas::Point2D Struct Reference

A 2D point. More...

#include <affine_transform.hpp>

Public Member Functions

constexpr Point2D operator+ (const Point2D &p) const
constexpr Point2D operator- (const Point2D &p) const
constexpr Point2D operator* (float s) const
constexpr bool operator== (const Point2D &p) const
constexpr bool operator!= (const Point2D &p) const

Public Attributes

float x = 0.0f
float y = 0.0f

Detailed Description

A 2D point.

NAMED Point2D, NOT Point, ON PURPOSE. Apple's MacTypes.h declares a GLOBAL Point (and a global Rect) for Carbon compatibility. A pulp::canvas::Point becomes ambiguous with it the moment both are visible — and since pulp::view::geometry.hpp re-exports this header, it is visible nearly repo-wide, which breaks Apple's own headers mid-parse:

MacTypes.h:548:16: error: reference to 'Point' is ambiguous

Canvas::Point2D (canvas.hpp) is an ALIAS of this type, not a second one.

Member Function Documentation

◆ operator!=()

bool pulp::canvas::Point2D::operator!= ( const Point2D & p) const
inlineconstexpr

◆ operator*()

Point2D pulp::canvas::Point2D::operator* ( float s) const
inlineconstexpr

◆ operator+()

Point2D pulp::canvas::Point2D::operator+ ( const Point2D & p) const
inlineconstexpr

◆ operator-()

Point2D pulp::canvas::Point2D::operator- ( const Point2D & p) const
inlineconstexpr

◆ operator==()

bool pulp::canvas::Point2D::operator== ( const Point2D & p) const
inlineconstexpr

Member Data Documentation

◆ x

float pulp::canvas::Point2D::x = 0.0f

◆ y

float pulp::canvas::Point2D::y = 0.0f

The documentation for this struct was generated from the following file: