[nostalgia/common] Update models
This commit is contained in:
parent
8f7de171af
commit
ec711331d1
@ -5,6 +5,7 @@
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "point.hpp"
|
#include "point.hpp"
|
||||||
@ -12,7 +13,11 @@
|
|||||||
namespace nostalgia::common {
|
namespace nostalgia::common {
|
||||||
|
|
||||||
class Bounds {
|
class Bounds {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
static constexpr auto TypeName = "net.drinkingtea.nostalgia.common.Bounds";
|
||||||
|
static constexpr auto Fields = 4;
|
||||||
|
static constexpr auto TypeVersion = 1;
|
||||||
int x = 0;
|
int x = 0;
|
||||||
int y = 0;
|
int y = 0;
|
||||||
int width = 0;
|
int width = 0;
|
||||||
@ -33,17 +38,17 @@ class Bounds {
|
|||||||
[[nodiscard]] Point pt1();
|
[[nodiscard]] Point pt1();
|
||||||
|
|
||||||
[[nodiscard]] Point pt2();
|
[[nodiscard]] Point pt2();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
ox::Error model(T *io, Bounds *obj) {
|
ox::Error model(T *io, Bounds *obj) {
|
||||||
auto err = OxError(0);
|
io->template setTypeInfo<Point>();
|
||||||
io->setTypeInfo("nostalgia::common::Bounds", 4);
|
oxReturnError(io->field("x", &obj->x));
|
||||||
err |= io->field("x", &obj->x);
|
oxReturnError(io->field("y", &obj->y));
|
||||||
err |= io->field("y", &obj->y);
|
oxReturnError(io->field("width", &obj->width));
|
||||||
err |= io->field("width", &obj->width);
|
oxReturnError(io->field("height", &obj->height));
|
||||||
err |= io->field("height", &obj->height);
|
return OxError(0);
|
||||||
return err;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -5,10 +5,9 @@
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
*/
|
*/
|
||||||
#ifndef NOSTALGIA_COMMON_COMMON_HPP
|
|
||||||
#define NOSTALGIA_COMMON_COMMON_HPP
|
#pragma once
|
||||||
|
|
||||||
#include "bounds.hpp"
|
#include "bounds.hpp"
|
||||||
#include "point.hpp"
|
#include "point.hpp"
|
||||||
|
#include "size.hpp"
|
||||||
#endif
|
|
||||||
|
@ -14,6 +14,9 @@ namespace nostalgia::common {
|
|||||||
|
|
||||||
class Point {
|
class Point {
|
||||||
public:
|
public:
|
||||||
|
static constexpr auto TypeName = "net.drinkingtea.nostalgia.common.Point";
|
||||||
|
static constexpr auto Fields = 2;
|
||||||
|
static constexpr auto TypeVersion = 1;
|
||||||
int x = 0;
|
int x = 0;
|
||||||
int y = 0;
|
int y = 0;
|
||||||
|
|
||||||
@ -183,7 +186,7 @@ constexpr bool Point::operator!=(const Point &p) const {
|
|||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
ox::Error model(T *io, Point *obj) {
|
ox::Error model(T *io, Point *obj) {
|
||||||
io->setTypeInfo("nostalgia::common::Bounds", 2);
|
io->template setTypeInfo<Point>();
|
||||||
oxReturnError(io->field("x", &obj->x));
|
oxReturnError(io->field("x", &obj->x));
|
||||||
oxReturnError(io->field("y", &obj->y));
|
oxReturnError(io->field("y", &obj->y));
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
|
@ -14,6 +14,9 @@ namespace nostalgia::common {
|
|||||||
|
|
||||||
class Size {
|
class Size {
|
||||||
public:
|
public:
|
||||||
|
static constexpr auto TypeName = "net.drinkingtea.nostalgia.common.Size";
|
||||||
|
static constexpr auto Fields = 2;
|
||||||
|
static constexpr auto TypeVersion = 1;
|
||||||
int width = 0;
|
int width = 0;
|
||||||
int height = 0;
|
int height = 0;
|
||||||
|
|
||||||
@ -183,7 +186,7 @@ constexpr bool Size::operator!=(const Size &p) const {
|
|||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
ox::Error model(T *io, Size *obj) {
|
ox::Error model(T *io, Size *obj) {
|
||||||
io->setTypeInfo("nostalgia::common::Bounds", 2);
|
io->template setTypeInfo<Size>();
|
||||||
oxReturnError(io->field("width", &obj->width));
|
oxReturnError(io->field("width", &obj->width));
|
||||||
oxReturnError(io->field("height", &obj->height));
|
oxReturnError(io->field("height", &obj->height));
|
||||||
return OxError(0);
|
return OxError(0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user