// public sealed class UxProperty<T> :36
// {
::g::Uno::UX::Property_type* UxProperty_typeof()
{
    static uSStrong< ::g::Uno::UX::Property_type*> type;
    if (type != NULL) return type;

    uTypeOptions options;
    options.FieldCount = 6;
    options.GenericCount = 1;
    options.ObjectSize = sizeof(UxProperty);
    options.TypeSize = sizeof(::g::Uno::UX::Property_type);
    type = (::g::Uno::UX::Property_type*)uClassType::New("Outracks.Simulator.Runtime.UxProperty`1", options);
    type->SetBase(::g::Uno::UX::Property_typeof()->MakeType(type->T(0)));
    type->fp_OnAddListener = (void(*)(::g::Uno::UX::Property*, uDelegate*))UxProperty__OnAddListener_fn;
    type->fp_OnGet = (void(*)(::g::Uno::UX::Property*, uTRef))UxProperty__OnGet_fn;
    type->fp_OnRemoveListener = (void(*)(::g::Uno::UX::Property*, uDelegate*))UxProperty__OnRemoveListener_fn;
    type->fp_OnSet = (void(*)(::g::Uno::UX::Property*, void*, uObject*))UxProperty__OnSet_fn;
    ::TYPES[0] = ::g::Uno::Delegate_typeof();
    ::TYPES[1] = ::g::Uno::Action1_typeof()->MakeType(uObject_typeof());
    ::TYPES[2] = uObject_typeof();
    ::TYPES[3] = ::g::Uno::Func_typeof()->MakeType(uObject_typeof());
    ::TYPES[4] = ::g::Uno::Action2_typeof()->MakeType(uObject_typeof(), uObject_typeof());
    type->SetFields(2,
        ::g::Uno::Action1_typeof()->MakeType(uObject_typeof()), offsetof(::g::Outracks::Simulator::Runtime::UxProperty, _adder), 0,
        ::g::Uno::Func_typeof()->MakeType(uObject_typeof()), offsetof(::g::Outracks::Simulator::Runtime::UxProperty, _getter), 0,
        ::g::Uno::Action1_typeof()->MakeType(uObject_typeof()), offsetof(::g::Outracks::Simulator::Runtime::UxProperty, _remover), 0,
        ::g::Uno::Action2_typeof()->MakeType(uObject_typeof(), uObject_typeof()), offsetof(::g::Outracks::Simulator::Runtime::UxProperty, _setter), 0);
    type->Reflection.SetFunctions(1,
        new uFunction(".ctor", type, (void*)UxProperty__New1_fn, 0, true, type, 4, ::g::Uno::Action2_typeof()->MakeType(uObject_typeof(), uObject_typeof()), ::g::Uno::Func_typeof()->MakeType(uObject_typeof()), ::g::Uno::Action1_typeof()->MakeType(uObject_typeof()), ::g::Uno::Action1_typeof()->MakeType(uObject_typeof())));
    return type;
}
// public extern class TextViewBase<T> :1738
// {
::g::Fuse::Node_type* TextViewBase_typeof()
{
    static uSStrong< ::g::Fuse::Node_type*> type;
    if (type != NULL) return type;

    uTypeOptions options;
    options.FieldCount = 54;
    options.GenericCount = 1;
    options.InterfaceCount = 2;
    options.ObjectSize = sizeof(TextViewBase);
    options.TypeSize = sizeof(::g::Fuse::Node_type);
    type = (::g::Fuse::Node_type*)uClassType::New("Fuse.Android.Controls.TextViewBase`1", options);
    type->SetBase(::g::Fuse::Android::Controls::Control_typeof()->MakeType(type->T(0)));
    type->fp_ctor_ = (void*)TextViewBase__New1_fn;
    type->interface0.fp_get_ParentObject = (void(*)(uObject*, uObject**))::g::Fuse::Node__FuseIChildObjectget_ParentObject_fn;
    type->interface1.fp_get_DataContext = (void(*)(uObject*, uObject**))::g::Fuse::Node__get_DataContext_fn;
    type->interface1.fp_set_DataContext = (void(*)(uObject*, uObject*))::g::Fuse::Node__set_DataContext_fn;
    type->SetInterfaces(
        ::g::Fuse::IChildObject_typeof(), offsetof(::g::Fuse::Node_type, interface0),
        ::g::Fuse::IDataContext_typeof(), offsetof(::g::Fuse::Node_type, interface1));
    type->SetFields(54);
    type->Reflection.SetFunctions(1,
        new uFunction(".ctor", type, (void*)TextViewBase__New1_fn, 0, true, type, 0));
    return type;
}
// public abstract extern class Shape<T> :1328
// {
::g::Fuse::Node_type* Shape_typeof()
{
    static uSStrong< ::g::Fuse::Node_type*> type;
    if (type != NULL) return type;

    uTypeOptions options;
    options.FieldCount = 54;
    options.GenericCount = 1;
    options.InterfaceCount = 2;
    options.ObjectSize = sizeof(Shape);
    options.TypeSize = sizeof(::g::Fuse::Node_type);
    type = (::g::Fuse::Node_type*)uClassType::New("Fuse.Android.Controls.Shape`1", options);
    type->SetBase(::g::Fuse::Android::Controls::Control_typeof()->MakeType(type->T(0)));
    type->interface0.fp_get_ParentObject = (void(*)(uObject*, uObject**))::g::Fuse::Node__FuseIChildObjectget_ParentObject_fn;
    type->interface1.fp_get_DataContext = (void(*)(uObject*, uObject**))::g::Fuse::Node__get_DataContext_fn;
    type->interface1.fp_set_DataContext = (void(*)(uObject*, uObject*))::g::Fuse::Node__set_DataContext_fn;
    type->SetInterfaces(
        ::g::Fuse::IChildObject_typeof(), offsetof(::g::Fuse::Node_type, interface0),
        ::g::Fuse::IDataContext_typeof(), offsetof(::g::Fuse::Node_type, interface1));
    type->SetFields(54);
    return type;
}