// This code is auto-generated by Qul's qmltocpp tool from the file 'QulPerfOverlay.qml'
// WARNING! All changes made in this file will be lost!
// NOTE: This generated API is to be considered implementation detail for Qul.
//       It may change from version to version and should not be relied upon.
#pragma once
#include <cstdlib>
#include <platforminterface/log.h>
#include <qul/image.h>
#include <qul/private/array.h>
#include <qul/private/compilerdetection.h>
#include <qul/private/extras/qulperf.h>
#include <qul/private/file.h>
#include <qul/private/items.h>
#include <qul/private/items/text.h>
#include <qul/private/qmltocpp_util.h>
#include <qul/private/qulrcc_lookup.h>
#include <qul/private/unicodestring.h>
#include <qul/signal.h>


namespace QtQuickUltralite {
namespace Profiling {

struct QulPerfOverlay : Qul::Private::Items::Column  {
    QulPerfOverlay();


    Qul::Property<Qul::Private::String> state;
    typedef Qul::Private::Items::TextLight  text__Text;
    typedef Qul::Private::Items::TextLight  text__2_Text;
    typedef Qul::Private::Items::TextLight  text__3_Text;
    typedef Qul::Private::Items::TextLight  text__4_Text;
    typedef Qul::Private::Items::TextLight  text__5_Text;
    typedef Qul::Private::Items::TextLight  text__6_Text;
    
    struct QulPerfOverlay_72506259_bindingFunctor {
        QulPerfOverlay *self;
        QulPerfOverlay_72506259_bindingFunctor (QulPerfOverlay *self_) : self(self_) {}
        void operator()(bool visible) const;
    };
    struct QulPerfOverlay_54254267_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    struct QulPerfOverlay_1085534217_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    struct QulPerfOverlay_607444706_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    struct QulPerfOverlay_1552127337_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    struct QulPerfOverlay_3726604858_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    struct QulPerfOverlay_2511342215_bindingFunctor {

        Qul::Private::String operator()(QulPerfOverlay *self) const;

    };
    Qul::Private::Items::ItemBase ::ExtraStorage_itemExtraProperties<Qul::Private::Items::Column  > ExtraStorage_itemExtraProperties_this_instance;
    text__Text text_;
    text__2_Text text__2;
    text__3_Text text__3;
    text__4_Text text__4;
    text__5_Text text__5;
    text__6_Text text__6;
    
    Qul::Private::ChangedEvent< QulPerfOverlay_72506259_bindingFunctor, bool > _onVisibleChanged_binding;
    Qul::Private::Binding<QulPerfOverlay_54254267_bindingFunctor, 0> text__text_binding;
    Qul::Private::Binding<QulPerfOverlay_1085534217_bindingFunctor, 0> text__2_text_binding;
    Qul::Private::Binding<QulPerfOverlay_607444706_bindingFunctor, 0> text__3_text_binding;
    Qul::Private::Binding<QulPerfOverlay_1552127337_bindingFunctor, 0> text__4_text_binding;
    Qul::Private::Binding<QulPerfOverlay_3726604858_bindingFunctor, 0> text__5_text_binding;
    Qul::Private::Binding<QulPerfOverlay_2511342215_bindingFunctor, 0> text__6_text_binding;
};

} // namespace QtQuickUltralite
} // namespace Profiling
