mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-09-24 07:06:36 +00:00
More work. Audio driver works enough to play music now.
This commit is contained in:
65
PortabilityLayer/Vec2i.h
Normal file
65
PortabilityLayer/Vec2i.h
Normal file
@@ -0,0 +1,65 @@
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
namespace PortabilityLayer
|
||||
{
|
||||
struct Vec2i
|
||||
{
|
||||
int32_t m_x;
|
||||
int32_t m_y;
|
||||
|
||||
Vec2i();
|
||||
Vec2i(const Vec2i &other);
|
||||
Vec2i(int32_t x, int32_t y);
|
||||
|
||||
Vec2i operator+(const Vec2i &other) const;
|
||||
Vec2i operator-(const Vec2i &other) const;
|
||||
|
||||
Vec2i &operator+=(const Vec2i &other);
|
||||
Vec2i &operator-=(const Vec2i &other);
|
||||
};
|
||||
|
||||
inline Vec2i::Vec2i()
|
||||
: m_x(0)
|
||||
, m_y(0)
|
||||
{
|
||||
}
|
||||
|
||||
inline Vec2i::Vec2i(const Vec2i &other)
|
||||
: m_x(other.m_x)
|
||||
, m_y(other.m_y)
|
||||
{
|
||||
}
|
||||
|
||||
inline Vec2i::Vec2i(int32_t x, int32_t y)
|
||||
: m_x(x)
|
||||
, m_y(y)
|
||||
{
|
||||
}
|
||||
|
||||
inline Vec2i Vec2i::operator+(const Vec2i &other) const
|
||||
{
|
||||
return Vec2i(m_x + other.m_x, m_y + other.m_y);
|
||||
}
|
||||
|
||||
inline Vec2i Vec2i::operator-(const Vec2i &other) const
|
||||
{
|
||||
return Vec2i(m_x - other.m_x, m_y - other.m_y);
|
||||
}
|
||||
|
||||
inline Vec2i &Vec2i::operator+=(const Vec2i &other)
|
||||
{
|
||||
m_x += other.m_x;
|
||||
m_y += other.m_y;
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline Vec2i &Vec2i::operator-=(const Vec2i &other)
|
||||
{
|
||||
m_x -= other.m_x;
|
||||
m_y -= other.m_y;
|
||||
return *this;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user