C

Qt Quick Ultralite instrument_cluster Example

// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial
#pragma once
#ifdef __cplusplus
#include <qul/property.h>
#include <qul/signal.h>
#include <qul/singleton.h>
#else
#include <stdbool.h>
#endif

#ifdef __cplusplus
struct VehicleStatus : public Qul::Singleton<VehicleStatus>
{
    Qul::Property<int> speed;
    Qul::Property<double> tripMeter;
    Qul::Signal<void(bool leftBlinkerState)> leftBlinkerStateChange;
    Qul::Signal<void(bool rightBlinkerState)> rightBlinkerStateChange;
};
extern "C" {
#endif
void qul_application_set_speed(int speed);
void qul_application_set_trip_meter(double tripMeter);
void qul_application_set_left_blinker_state(bool state);
void qul_application_set_right_blinker_state(bool state);
#ifdef __cplusplus
}
#endif