Init(args)
Scripting Reference
Loading...
Searching...
No Matches
Sisus.Init.ScriptableWrapper< TWrapped > Class Template Referenceabstract

Description

A base class for ScriptableObjects that act as simple wrappers for plain old class objects.

A class wrapped by the ScriptableWrapper<> can be loaded from Resources using the Find.Resource<TWrapped>(string) function.

Optionally the wrapped class can receive callbacks during select unity event functions from the wrapper by implementing one or more of the following interfaces:

Template Parameters
TWrappedType of the plain old class object wrapped by this scriptable object.
Inheritance diagram for Sisus.Init.ScriptableWrapper< TWrapped >:
Sisus.Init.IWrapper< TWrapped > Sisus.Init.IValueProvider< TValue > Sisus.Init.IValueByTypeProvider Sisus.Init.IWrapper Sisus.Init.IInitializable< TArgument > Sisus.Init.IValueProvider Sisus.Init.ICoroutineRunner Sisus.Init.IArgs< TArgument > Sisus.Init.IOneArgument Sisus.Init.IFirstArgument< TFirstArgument >

Static Public Member Functions

static implicit operator TWrapped (ScriptableWrapper< TWrapped > wrapper)
 Defines an implicit conversion of a ScriptableWrapper<TWrapped> to the TWrapped plain old class object that it wraps.
 
static operator ScriptableWrapper< TWrapped > (TWrapped wrapped)
 Defines an explicit conversion of a TWrapped to a ScriptableWrapper<TWrapped> that wraps it.
 

Protected Member Functions

virtual void Reset ()
 Reset state to default values.
 
virtual void Awake ()
 Awake is called when the script instance is being loaded and handles calling the Init method with the TWrapped argument.
 
virtual void OnEnable ()
 This function is called when the object becomes enabled and active.
 
virtual void OnDisable ()
 This function is called when the scriptable object goes out of scope.
 
virtual void OnDestroy ()
 The OnDestroy even function is called when this ScriptableWrapper is destroyed.
 

Properties

new TWrapped WrappedObject [get]
 The plain old class object wrapped by this component.
 
- Properties inherited from Sisus.Init.IWrapper
GameObject gameObject [get]
 The GameObject this wrapper is attached to, if any.
 
MonoBehaviour AsMonoBehaviour [get]
 This wrapper as a MonoBehaviour, or null if the wrapper class does not derive from MonoBehaviour.
 
Object AsObject [get]
 This wrapper as an Object.
 
HideFlags hideFlags [get, set]
 Should the object be hidden, saved with the Scene or modifiable by the user?
 
string name [get, set]
 The name of the object.
 
bool enabled [get]
 Gets a value indicating whether the wrapper is enabled.
 
bool isActiveAndEnabled [get]
 Gets a value indicating whether the wrapper is enabled and not attached to an inactive

See also
GameObject

.

 

Additional Inherited Members

- Public Member Functions inherited from Sisus.Init.IWrapper
int GetInstanceID ()
 Returns the instance id of the object.
 
bool CompareTag (string tag)
 Returns true if the wrapper is attached to a GameObject that has the given tag; otherwise, false.
 
Find< T > ()
 Gets a reference to an object of type T found on the GameObject the wrapper is attached to.
 
T[] FindAll< T > ()
 Gets references to all objects of type T found on the GameObject the wrapper is attached to.
 
FindInChildren< T > ()
 Gets a reference to an object of type T found on the GameObject the wrapper is attached to, or any of its children.
 
T[] FindAllInChildren< T > ()
 Gets references to all objects of type T found on the GameObject the wrapper is attached to, or any of its children.
 
FindInParents< T > ()
 Gets a reference to an object of type T found on the GameObject the wrapper is attached to, or any of its parents.
 
T[] FindAllInParents< T > ()
 Gets references to all objects of type T found on the GameObject the wrapper is attached to, or any of its parents.
 
- Public Member Functions inherited from Sisus.Init.ICoroutineRunner
Coroutine StartCoroutine (IEnumerator coroutine)
 Starts the provided coroutine .
 
void StopCoroutine (IEnumerator coroutine)
 Stops the provided coroutine .
 
void StopCoroutine (Coroutine coroutine)
 Stops the provided coroutine .
 
void StopAllCoroutines ()
 Stops all coroutine coroutines that are currently running on this object, if any.
 
- Public Member Functions inherited from Sisus.Init.IInitializable< TArgument >
void Init (TArgument argument)
 Initializes the object with an object that it depends on.
 
- Public Member Functions inherited from Sisus.Init.IArgs< TArgument >
void Validate (TArgument argument)
 Validates the initialization argument that was provided to this client.
 
- Public Member Functions inherited from Sisus.Init.IValueProvider< TValue >
new bool HasValueFor (Component client)
 Gets a value indicating whether this value provider can provide a value of type TValue for the client at this time.
 
bool TryGetFor ([AllowNull] Component client, [NotNullWhen(true), MaybeNullWhen(false)] out TValue value)
 Gets the value of type TValue for the client .
 
- Public Member Functions inherited from Sisus.Init.IValueByTypeProvider
bool TryGetFor ([AllowNull] Component client, [DisallowNull] Type valueType, out object value)
 Gets the value of the given type for the client .
 
bool HasValueFor< TValue > (Component client)
 Gets a value indicating whether this value provider can provide a value of type TValue for the client at this time.