rute 0.0.6

UI library implemented on top of Qt
Documentation
// This file is auto-generated by rute_gen. DO NOT EDIT!
#pragma once

#include <stdbool.h>
#include <stdint.h>

#include "../rute_base.h"

#ifdef __cplusplus
extern "C" {
#endif
#include "line_f_ffi.h"
#include "line_ffi.h"
#include "point_f_ffi.h"

struct RULineFFuncs;
struct RULineF;

typedef struct RULineFFuncs {
    void (*destroy)(struct RUBase* self);
    struct RULineF (*from_polar)(struct RUBase* self_c, float length,
                                 float angle);
    bool (*is_null)(struct RUBase* self_c);
    struct RUPointF (*p1)(struct RUBase* self_c);
    struct RUPointF (*p2)(struct RUBase* self_c);
    float (*x1)(struct RUBase* self_c);
    float (*y1)(struct RUBase* self_c);
    float (*x2)(struct RUBase* self_c);
    float (*y2)(struct RUBase* self_c);
    float (*dx)(struct RUBase* self_c);
    float (*dy)(struct RUBase* self_c);
    float (*length)(struct RUBase* self_c);
    void (*set_length)(struct RUBase* self_c, float len);
    float (*angle)(struct RUBase* self_c);
    void (*set_angle)(struct RUBase* self_c, float angle);
    float (*angle_to)(struct RUBase* self_c, struct RUBase* l);
    struct RULineF (*unit_vector)(struct RUBase* self_c);
    struct RULineF (*normal_vector)(struct RUBase* self_c);
    uint32_t (*intersect)(struct RUBase* self_c, struct RUBase* l,
                          struct RUBase* intersection_point);
    float (*angle_2)(struct RUBase* self_c, struct RUBase* l);
    struct RUPointF (*point_at)(struct RUBase* self_c, float t);
    struct RUPointF (*center)(struct RUBase* self_c);
    void (*set_p1)(struct RUBase* self_c, struct RUBase* p1);
    void (*set_p2)(struct RUBase* self_c, struct RUBase* p2);
    void (*set_points)(struct RUBase* self_c, struct RUBase* p1,
                       struct RUBase* p2);
    void (*set_line)(struct RUBase* self_c, float x1, float y1, float x2,
                     float y2);
    struct RULine (*to_line)(struct RUBase* self_c);
} RULineFFuncs;

typedef struct RULineFAllFuncs {
    struct RULineFFuncs* line_f_funcs;
} RULineFAllFuncs;

typedef struct RULineF {
    RUBase* qt_data;
    RUBase* host_data;
    struct RULineFAllFuncs* all_funcs;
} RULineF;

extern RULineFFuncs s_line_f_funcs;
extern RULineFAllFuncs s_line_f_all_funcs;

#ifdef __cplusplus
}
#endif