Show / Hide Table of Contents

    Class ScriptableObjectBaseDataCollection<TInterface, TConcrete>

    Extend this class to reduce the amount of boilerplate required for a ScriptableObject based IDataProvider. This version is meant to contain multiple IData objects. See ScriptableObjectBaseData<TInterface, TConcrete> for a version that uses ISingleDataProvider<TOutputData>.

    Inheritance
    Object
    ScriptableObjectBaseDataCollection<TInterface, TConcrete>
    Implements
    IMultipleDataProvider<TInterface>
    IDataProvider
    IInjectable
    Namespace: IdleKit.Core
    Assembly: cs.temp.dll.dll
    Syntax
    public abstract class ScriptableObjectBaseDataCollection<TInterface, TConcrete> : ScriptableObject, IMultipleDataProvider<TInterface>, IDataProvider, IInjectable where TInterface : class, IData where TConcrete : class, TInterface
    Type Parameters
    Name Description
    TInterface

    The interface this IData implements. Generally the most derived one.

    TConcrete

    The concrete class of the data. This must implement TInterface.

    Fields

    _dataCollection

    Declaration
    protected TConcrete[] _dataCollection
    Field Value
    Type Description
    TConcrete[]

    Properties

    Data

    Declaration
    public virtual TInterface[] Data { get; }
    Property Value
    Type Description
    TInterface[]

    DataType

    Declaration
    public virtual Type DataType { get; }
    Property Value
    Type Description
    Type

    IsLoaded

    Declaration
    public virtual bool IsLoaded { get; }
    Property Value
    Type Description
    Boolean

    Methods

    GetData(Action<TInterface[]>)

    Declaration
    public virtual void GetData(Action<TInterface[]> onDataRetrieved)
    Parameters
    Type Name Description
    Action<TInterface[]> onDataRetrieved

    Inject(IResolver)

    Declaration
    public virtual void Inject(IResolver resolver)
    Parameters
    Type Name Description
    IResolver resolver

    Implements

    IMultipleDataProvider<TOutputData>
    IDataProvider
    IInjectable
    Back to top Copyright © 2020 East Side Games Inc.