unity-atoms/docs/api/unityatoms.md
Adam Ramberg 3613e32c34 v3.0.0 🐉
2020-02-24 00:59:35 +01:00

70 KiB

id title hide_title sidebar_label
unityatoms UnityAtoms true UnityAtoms

Namespace - UnityAtoms

IMGUIUtils

Utility methods for IMGUI.

Methods

SnipRectH(UnityEngine.Rect,System.Single)

Snip a Rect horizontally.

Parameters
  • rect - The rect.
  • range - The range.
Returns

A new Rect snipped horizontally.


SnipRectH(UnityEngine.Rect,System.Single,UnityEngine.Rect@,System.Single)

Snip a Rect horizontally.

Parameters
  • rect - The rect.
  • range - The range.
  • rest - Rest rect.
  • gutter - Gutter
Returns

A new Rect snipped horizontally.


SnipRectV(UnityEngine.Rect,System.Single)

Snip a Rect vertically.

Parameters
  • rect - The rect.
  • range - The range.
Returns

A new Rect snipped vertically.


SnipRectV(UnityEngine.Rect,System.Single,UnityEngine.Rect@,System.Single)

Snip a Rect vertically.

Parameters
  • rect - The rect.
  • range - The range.
  • rest - Rest rect.
  • gutter - Gutter
Returns

A new Rect snipped vertically.


StringReferenceAtomBaseVariableDictionary

A SerializableDictionary of type StringReference and AtomBaseVariable. Used by AtomCollection.

Methods

Get<T>(System.String)

Generic getter.

Type Parameters

  • T - The expected type of the value you want to retrieve.
Parameters
  • key - The key associated with the value you want to retrieve.
Returns

The value of type T if found, otherwise null.


Get<T>(UnityAtoms.AtomBaseVariable{System.String})

Generic getter.

Type Parameters

  • T - The expected type of the value you want to retrieve.
Parameters
  • key - The key associated with the value you want to retrieve.
Returns

The value of type T if found, otherwise null.


Add(System.String,UnityAtoms.AtomBaseVariable)

Add value and its associated key to the dictionary.

Parameters
  • key - The key associated with the value.
  • value - The value to add.

Add(UnityAtoms.AtomBaseVariable{System.String},UnityAtoms.AtomBaseVariable)

Add value and its associated key to the dictionary.

Parameters
  • key - The key associated with the value.
  • value - The value to add.

Remove(System.String)

Remove item by key from the collection.

Parameters
  • key - The key that you want to remove.
Returns

True if it removed a value from the collection, otherwise false.


Remove(UnityAtoms.AtomBaseVariable{System.String})

Remove item by key from the collection.

Parameters
  • key - The key that you want to remove.
Returns

True if it removed a value from the collection, otherwise false.


SerializableDictionary<K,V>

Type Parameters

  • K - Key type.
  • V - Value type.

A Serializable dictionary used by AtomCollection.

Variables

_duplicateKeyIndices

Needed in order to keep track of duplicate keys in the dictionary.


AtomCollection

A Collection / Dictionary of Atom Variables (AtomBaseVariable).

Properties

Added

Event for when and item is added to the collection.


Removed

Event for when and item is removed from the collection.


Cleared

Event for when the collection is cleared.

Methods

ObserveAdd

Make the add event into an IObservable<T>. Makes Collection's add Event compatible with for example UniRx.

Returns

The add Event as an IObservable<T>.


ObserveRemove

Make the remove event into an IObservable<T>. Makes Collection's remove Event compatible with for example UniRx.

Returns

The remove Event as an IObservable<T>.


ObserveClear

Make the clear event into an IObservable<Void>. Makes Collection's clear Event compatible with for example UniRx.

Returns

The clear Event as an IObservable<Void>.


Void

Dummy module class used for representing nothing in for example empty Events, eg: AtomEvent<Void>


FloatReference

Reference of type float. Inherits from EquatableAtomReference<float, FloatConstant, FloatVariable, FloatEvent, FloatFloatEvent, FloatFloatFunction, FloatVariableInstancer>.


Vector2Reference

Reference of type Vector2. Inherits from EquatableAtomReference<Vector2, Vector2Constant, Vector2Variable, Vector2Event, Vector2Vector2Event, Vector2Vector2Function, Vector2VariableInstancer>.


BoolReference

Reference of type bool. Inherits from EquatableAtomReference<bool, BoolConstant, BoolVariable, BoolEvent, BoolBoolEvent, BoolBoolFunction, BoolVariableInstancer>.


ColorReference

Reference of type Color. Inherits from EquatableAtomReference<Color, ColorConstant, ColorVariable, ColorEvent, ColorColorEvent, ColorColorFunction, ColorVariableInstancer>.


ColliderReference

Reference of type Collider. Inherits from AtomReference<Collider, ColliderConstant, ColliderVariable, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction, ColliderVariableInstancer>.


IntReference

Reference of type int. Inherits from EquatableAtomReference<int, IntConstant, IntVariable, IntEvent, IntIntEvent, IntIntFunction, IntVariableInstancer>.


AtomReferenceBase

None generic base class for AtomReference<T, C, V, E1, E2, F, VI>.

Variables

_usage

Descries how we use the Reference and where the value comes from.


AtomReferenceBase.Usage

Enum for how to use the Reference.


Collider2DReference

Reference of type Collider2D. Inherits from AtomReference<Collider2D, Collider2DConstant, Collider2DVariable, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction, Collider2DVariableInstancer>.


GameObjectReference

Reference of type GameObject. Inherits from AtomReference<GameObject, GameObjectConstant, GameObjectVariable, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction, GameObjectVariableInstancer>.


Vector3Reference

Reference of type Vector3. Inherits from EquatableAtomReference<Vector3, Vector3Constant, Vector3Variable, Vector3Event, Vector3Vector3Event, Vector3Vector3Function, Vector3VariableInstancer>.


AtomReference<T,C,V,E1,E2,F,VI>

Type Parameters

  • T - The type of the variable.
  • C - Constant of type T.
  • V - Variable of type T.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T.
  • VI - Variable Instancer of type T.

A Reference lets you define a variable in your script where you then from the inspector can choose if it's going to be taking the value from a Constant, Variable, Value or a Variable Instancer.

Variables

_value

Value used if Usage is set to Value.


_constant

Constant used if Usage is set to Constant.


_variable

Variable used if Usage is set to Variable.


_variableInstancer

Variable Instancer used if Usage is set to VariableInstancer.

Properties

Value

Get or set the value for the Reference.


StringReference

Reference of type string. Inherits from EquatableAtomReference<string, StringConstant, StringVariable, StringEvent, StringStringEvent, StringStringFunction, StringVariableInstancer>.


GameObjectUnityEvent

None generic Unity Event of type GameObject. Inherits from UnityEvent<GameObject>.


Collider2DUnityEvent

None generic Unity Event of type Collider2D. Inherits from UnityEvent<Collider2D>.


ColliderColliderUnityEvent

None generic Unity Event x 2 of type Collider. Inherits from UnityEvent<Collider, Collider>.


ColliderUnityEvent

None generic Unity Event of type Collider. Inherits from UnityEvent<Collider>.


BoolUnityEvent

None generic Unity Event of type bool. Inherits from UnityEvent<bool>.


Collider2DCollider2DUnityEvent

None generic Unity Event x 2 of type Collider2D. Inherits from UnityEvent<Collider2D, Collider2D>.


FloatFloatUnityEvent

None generic Unity Event x 2 of type float. Inherits from UnityEvent<float, float>.


Vector2UnityEvent

None generic Unity Event of type Vector2. Inherits from UnityEvent<Vector2>.


FloatUnityEvent

None generic Unity Event of type float. Inherits from UnityEvent<float>.


StringStringUnityEvent

None generic Unity Event x 2 of type string. Inherits from UnityEvent<string, string>.


IntUnityEvent

None generic Unity Event of type int. Inherits from UnityEvent<int>.


Vector3UnityEvent

None generic Unity Event of type Vector3. Inherits from UnityEvent<Vector3>.


ColorUnityEvent

None generic Unity Event of type Color. Inherits from UnityEvent<Color>.


AtomBaseVariableUnityEvent

None generic Unity Event of type AtomBaseVariable. Inherits from UnityEvent<AtomBaseVariable>.


StringUnityEvent

None generic Unity Event of type string. Inherits from UnityEvent<string>.


Vector2Vector2UnityEvent

None generic Unity Event x 2 of type Vector2. Inherits from UnityEvent<Vector2, Vector2>.


IntIntUnityEvent

None generic Unity Event x 2 of type int. Inherits from UnityEvent<int, int>.


ColorColorUnityEvent

None generic Unity Event x 2 of type Color. Inherits from UnityEvent<Color, Color>.


Vector3Vector3UnityEvent

None generic Unity Event x 2 of type Vector3. Inherits from UnityEvent<Vector3, Vector3>.


GameObjectGameObjectUnityEvent

None generic Unity Event x 2 of type GameObject. Inherits from UnityEvent<GameObject, GameObject>.


BoolBoolUnityEvent

None generic Unity Event x 2 of type bool. Inherits from UnityEvent<bool, bool>.


GameObjectConstant

Constant of type GameObject. Inherits from AtomBaseVariable<GameObject>.


Collider2DConstant

Constant of type Collider2D. Inherits from AtomBaseVariable<Collider2D>.


BoolConstant

Constant of type bool. Inherits from AtomBaseVariable<bool>.


Vector2Constant

Constant of type Vector2. Inherits from AtomBaseVariable<Vector2>.


ColliderConstant

Constant of type Collider. Inherits from AtomBaseVariable<Collider>.


IntConstant

Constant of type int. Inherits from AtomBaseVariable<int>.


FloatConstant

Constant of type float. Inherits from AtomBaseVariable<float>.


StringConstant

Constant of type string. Inherits from AtomBaseVariable<string>.


ColorConstant

Constant of type Color. Inherits from AtomBaseVariable<Color>.


Vector3Constant

Constant of type Vector3. Inherits from AtomBaseVariable<Vector3>.


StringEventReference

Event Reference of type string. Inherits from AtomEventReference<string, StringVariable, StringEvent, StringStringEvent, StringStringFunction, StringVariableInstancer>.


AtomEventX2Reference<T,V,E1,E2,F,VI>

Type Parameters

  • T - The type of the event.
  • V - Variable of type T.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T.
  • VI - Variable Instancer of type T.

An Event x 2 Reference lets you define an event in your script where you then from the inspector can choose if it's going to use the Event from an Event x 2, Variable or a Variable Instancer.

Variables

_event

Event used if Usage is set to Event.


_variable

Variable used if Usage is set to Variable.


_variableInstancer

Variable Instancer used if Usage is set to VariableInstancer.

Properties

Event

Get or set the event for the Event Reference.


GameObjectGameObjectEventReference

Event x 2 Reference of type GameObject. Inherits from AtomEventX2Reference<GameObject, GameObjectVariable, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction, GameObjectVariableInstancer>.


IntIntEventReference

Event x 2 Reference of type int. Inherits from AtomEventX2Reference<int, IntVariable, IntEvent, IntIntEvent, IntIntFunction, IntVariableInstancer>.


IntEventReference

Event Reference of type int. Inherits from AtomEventReference<int, IntVariable, IntEvent, IntIntEvent, IntIntFunction, IntVariableInstancer>.


ColorColorEventReference

Event x 2 Reference of type Color. Inherits from AtomEventX2Reference<Color, ColorVariable, ColorEvent, ColorColorEvent, ColorColorFunction, ColorVariableInstancer>.


Vector2Vector2EventReference

Event x 2 Reference of type Vector2. Inherits from AtomEventX2Reference<Vector2, Vector2Variable, Vector2Event, Vector2Vector2Event, Vector2Vector2Function, Vector2VariableInstancer>.


ColliderEventReference

Event Reference of type Collider. Inherits from AtomEventReference<Collider, ColliderVariable, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction, ColliderVariableInstancer>.


BoolEventReference

Event Reference of type bool. Inherits from AtomEventReference<bool, BoolVariable, BoolEvent, BoolBoolEvent, BoolBoolFunction, BoolVariableInstancer>.


GameObjectEventReference

Event Reference of type GameObject. Inherits from AtomEventReference<GameObject, GameObjectVariable, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction, GameObjectVariableInstancer>.


BoolBoolEventReference

Event x 2 Reference of type bool. Inherits from AtomEventX2Reference<bool, BoolVariable, BoolEvent, BoolBoolEvent, BoolBoolFunction, BoolVariableInstancer>.


ColliderColliderEventReference

Event x 2 Reference of type Collider. Inherits from AtomEventX2Reference<Collider, ColliderVariable, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction, ColliderVariableInstancer>.


Vector2EventReference

Event Reference of type Vector2. Inherits from AtomEventReference<Vector2, Vector2Variable, Vector2Event, Vector2Vector2Event, Vector2Vector2Function, Vector2VariableInstancer>.


FloatFloatEventReference

Event x 2 Reference of type float. Inherits from AtomEventX2Reference<float, FloatVariable, FloatEvent, FloatFloatEvent, FloatFloatFunction, FloatVariableInstancer>.


Vector3Vector3EventReference

Event x 2 Reference of type Vector3. Inherits from AtomEventX2Reference<Vector3, Vector3Variable, Vector3Event, Vector3Vector3Event, Vector3Vector3Function, Vector3VariableInstancer>.


Collider2DEventReference

Event Reference of type Collider2D. Inherits from AtomEventReference<Collider2D, Collider2DVariable, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction, Collider2DVariableInstancer>.


AtomEventReference<T,V,E1,E2,F,VI>

Type Parameters

  • T - The type of the event.
  • V - Variable of type T.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T.
  • VI - Variable Instancer of type T.

An Event Reference lets you define an event in your script where you then from the inspector can choose if it's going to use the Event from an Event, Variable or a Variable Instancer.

Variables

_event

Event used if Usage is set to Event.


_variable

Variable used if Usage is set to Variable.


_variableInstancer

Variable Instancer used if Usage is set to VariableInstancer.

Properties

Event

Get or set the event for the Event Reference.


Vector3EventReference

Event Reference of type Vector3. Inherits from AtomEventReference<Vector3, Vector3Variable, Vector3Event, Vector3Vector3Event, Vector3Vector3Function, Vector3VariableInstancer>.


FloatEventReference

Event Reference of type float. Inherits from AtomEventReference<float, FloatVariable, FloatEvent, FloatFloatEvent, FloatFloatFunction, FloatVariableInstancer>.


Collider2DCollider2DEventReference

Event x 2 Reference of type Collider2D. Inherits from AtomEventX2Reference<Collider2D, Collider2DVariable, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction, Collider2DVariableInstancer>.


AtomEventReferenceBase

None generic base class for AtomEventReference<...>.

Variables

_usage

Descries how we use the Event Reference.


AtomEventReferenceBase.Usage

Enum for how to use the Event Reference.


ColorEventReference

Event Reference of type Color. Inherits from AtomEventReference<Color, ColorVariable, ColorEvent, ColorColorEvent, ColorColorFunction, ColorVariableInstancer>.


StringStringEventReference

Event x 2 Reference of type string. Inherits from AtomEventX2Reference<string, StringVariable, StringEvent, StringStringEvent, StringStringFunction, StringVariableInstancer>.


Vector2VariableInstancer

Variable Instancer of type Vector2. Inherits from AtomVariableInstancer<Vector2Variable, Vector2, Vector2Event, Vector2Vector2Event, Vector2Vector2Function>.


AtomVariableInstancer<V,T,E1,E2,F>

Type Parameters

  • V - Variable of type T.
  • T - The value type.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T

A Variable Instancer is a MonoBehaviour that takes a variable as a base and creates an in memory copy of it OnEnable. This is handy when you want to use atoms for prefabs that are instantiated at runtime. Use together with AtomCollection to react accordingly when a prefab with an assoicated atom is added or deleted to the scene.

Variables

_base

The variable that the in memory copy will be based on when created at runtime.


_syncToCollection

If assigned the in memory copy variable will be added to the collection on Start using the gameObject's instance id as key. The value will also be removed from the collection OnDestroy.


_syncToList

If assigned the in memory copy variable will be added to the list on Start. The value will also be removed from the list OnDestroy.

Properties

Variable

Getter for retrieving the in memory runtime variable.


Value

Getter for retrieving the value of the in memory runtime variable.


Vector3VariableInstancer

Variable Instancer of type Vector3. Inherits from AtomVariableInstancer<Vector3Variable, Vector3, Vector3Event, Vector3Vector3Event, Vector3Vector3Function>.


FloatVariableInstancer

Variable Instancer of type float. Inherits from AtomVariableInstancer<FloatVariable, float, FloatEvent, FloatFloatEvent, FloatFloatFunction>.


BoolVariableInstancer

Variable Instancer of type bool. Inherits from AtomVariableInstancer<BoolVariable, bool, BoolEvent, BoolBoolEvent, BoolBoolFunction>.


Collider2DVariableInstancer

Variable Instancer of type Collider2D. Inherits from AtomVariableInstancer<Collider2DVariable, Collider2D, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction>.


GameObjectVariableInstancer

Variable Instancer of type GameObject. Inherits from AtomVariableInstancer<GameObjectVariable, GameObject, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction>.


ColorVariableInstancer

Variable Instancer of type Color. Inherits from AtomVariableInstancer<ColorVariable, Color, ColorEvent, ColorColorEvent, ColorColorFunction>.


ColliderVariableInstancer

Variable Instancer of type Collider. Inherits from AtomVariableInstancer<ColliderVariable, Collider, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction>.


IntVariableInstancer

Variable Instancer of type int. Inherits from AtomVariableInstancer<IntVariable, int, IntEvent, IntIntEvent, IntIntFunction>.


StringVariableInstancer

Variable Instancer of type string. Inherits from AtomVariableInstancer<StringVariable, string, StringEvent, StringStringEvent, StringStringFunction>.


Runtime

Internal constant and static readonly members for runtime usage.

Properties

IsUnityAtomsRepo

Determine if we are working the Unity Atoms source library / repo or not.


Runtime.Constants

Runtime constants

Variables

LOG_PREFIX

Prefix that should be pre-pended to all Debug.Logs made from UnityAtoms to help immediately inform a user that those logs are made from this library.


DynamicAtoms

Static helper class for when creating Atoms a runtime (yes it is indeed possible 🤯).

Methods

CreateVariable<T,V,E1,E2,F>(initialValue,changed,changedWithHistory,preChangeTransformers)

Create a Variable at runtime.

Type Parameters

  • T - The Variable value type.
  • V - The Variable type AtomVariable<T, E1, E2>`.
  • E1 - The type of the changed Event of type AtomEvent<T>.
  • E2 - The type of the changedWithHistory Event of type AtomEvent<T, T>.
  • F - The type of the preChangeTransformers Functions of type AtomFunction<T, T>.
Parameters
  • initialValue - Inital value of the Variable created.
  • changed - Changed Event of type E1.
  • changedWithHistory - Changed with history Event of type E2.
  • preChangeTransformers - List of pre change transformers of the type List<F>.
Returns

The Variable created.


CreateList<T,L,E>(added,removed,cleared)

Create a List at runtime.

Type Parameters

  • T - The list item type.
  • L - The List type to create of type AtomList<T, E>.
  • E - The Event tyoe used for removed and added of type AtomEvent<T>.
Parameters
  • added - Added Event of type E.
  • removed - Removed Event of type E.
  • cleared - Cleared Event of type Void.
Returns

The List created.


CreateAction<A,T1>(action)

Create an Action at runtime.

Type Parameters

  • A - The Action created of type AtomAction<T>.
  • T1 - The type of the first parameter of the Action.
Parameters
  • action - The action.
Returns

The Action created


CreateAction<A,T1,T2>(action)

Create an Action at runtime.

Type Parameters

  • A - The Action created of type AtomAction<T1, T2>.
  • T1 - The type of the first parameter of the Action.
  • T2 - The type of the second parameter of the Action.
Parameters
  • action - The action.
Returns

The Action created


CreateAction<A,T1,T2,T3>(action)

Create an Action at runtime.

Type Parameters

  • A - The Action created of type AtomAction<T1, T2, T3>.
  • T1 - The type of the first parameter of the Action.
  • T2 - The type of the second parameter of the Action.
  • T3 - The type of the third parameter of the Action.
Parameters
  • action - The action.
Returns

The Action created


CreateAction<A,T1,T2,T3,T4>(action)

Create an Action at runtime.

Type Parameters

  • A - The Action created of type AtomAction<T1, T2, T3, T4>.
  • T1 - The type of the first parameter of the Action.
  • T2 - The type of the second parameter of the Action.
  • T3 - The type of the third parameter of the Action.
  • T4 - The type of the fourth parameter of the Action.
Parameters
  • action - The action.
Returns

The Action created


CreateAction<A,T1,T2,T3,T4,T5>(action)

Create an Action at runtime.

Type Parameters

  • A - The Action created of type AtomAction<T1, T2, T3, T4, T5>.
  • T1 - The type of the first parameter of the Action.
  • T2 - The type of the second parameter of the Action.
  • T3 - The type of the third parameter of the Action.
  • T4 - The type of the fourth parameter of the Action.
  • T5 - The type of the fifth parameter of the Action.
Parameters
  • action - The action.
Returns

The Action created


CreateFunction<F,R>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R>.
  • R - The return type.
Parameters
  • func - The function.
Returns

The Function crated.


CreateFunction<F,R,T1>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R, T1>.
  • R - The return type.
  • T1 - The type of the first parameter of the Function.
Parameters
  • func - The function.
Returns

The Function crated.


CreateFunction<F,R,T1,T2>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R, T1, T2>.
  • R - The return type.
  • T1 - The type of the first parameter of the Function.
  • T2 - The type of the second parameter of the Function.
Parameters
  • func - The function.
Returns

The Function crated.


CreateFunction<F,R,T1,T2,T3>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R, T1, T2, T3>.
  • R - The return type.
  • T1 - The type of the first parameter of the Function.
  • T2 - The type of the second parameter of the Function.
  • T3 - The type of the third parameter of the Function.
Parameters
  • func - The function.
Returns

The Function crated.


CreateFunction<F,R,T1,T2,T3,T4>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R, T1, T2, T3, T4>.
  • R - The return type.
  • T1 - The type of the first parameter of the Function.
  • T2 - The type of the second parameter of the Function.
  • T3 - The type of the third parameter of the Function.
  • T4 - The type of the fourth parameter of the Function.
Parameters
  • func - The function.
Returns

The Function crated.


CreateFunction<F,R,T1,T2,T3,T4,T5>(func)

Create a Function at runtime.

Type Parameters

  • F - The Function created of type AtomFunction<R, T1, T2, T3, T4, T5>.
  • R - The return type.
  • T1 - The type of the first parameter of the Function.
  • T2 - The type of the second parameter of the Function.
  • T3 - The type of the third parameter of the Function.
  • T4 - The type of the fourth parameter of the Function.
  • T5 - The type of the fifth parameter of the Function.
Parameters
  • func - The function.
Returns

The Function crated.


BoolVariable

Variable of type bool. Inherits from EquatableAtomVariable<bool, BoolEvent, BoolBoolEvent, BoolBoolFunction>.


AtomBaseVariable

None generic base class for Variables. Inherits from BaseAtom.

Properties

BaseValue

The Variable value as an object.abstract Beware of boxing! 🥊

Methods

Reset(System.Boolean)

Abstract method that could be implemented to reset the Variable value.


AtomBaseVariable<T>

Type Parameters

  • T - The Variable value type.

Generic base class for Variables. Inherits from AtomBaseVariable.

Properties

BaseValue

The Variable value as an object.abstract Beware of boxing! 🥊


Value

The Variable value as a property.

Methods

Equals(other)

Determines equality between Variables.

Parameters
  • other - The other Variable to compare.
Returns

true if they are equal, otherwise false.


Reset(System.Boolean)

Not implemented.abstract Throws Exception


Vector2Variable

Variable of type Vector2. Inherits from EquatableAtomVariable<Vector2, Vector2Event, Vector2Vector2Event, Vector2Vector2Function>.

Methods

MultiplyBy(System.Single)

Multiply variable by value.

Parameters
  • value - Value to multiple by.

MultiplyBy(UnityAtoms.AtomBaseVariable{System.Single})

Multiply variable by Variable value.

Parameters
  • variable - Variable with value to multiple by.

DivideBy(System.Single)

Divide Variable by value.

Parameters
  • value - Value to divide by.

DivideBy(UnityAtoms.AtomBaseVariable{System.Single})

Divide Variable by Variable value.

Parameters
  • variable - Variable value to divide by.

ColliderVariable

Variable of type Collider. Inherits from AtomVariable<Collider, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction>.


IntVariable

Variable of type int. Inherits from EquatableAtomVariable<int, IntEvent, IntIntEvent, IntIntFunction>.

Methods

Add(System.Int32)

Add value to Variable.

Parameters
  • value - Value to add.

Add(UnityAtoms.AtomBaseVariable{System.Int32})

Add variable value to Variable.

Parameters
  • variable - Variable with value to add.

Subtract(System.Int32)

Subtract value from Variable.

Parameters
  • value - Value to subtract.

Subtract(UnityAtoms.AtomBaseVariable{System.Int32})

Subtract variable value from Variable.

Parameters
  • variable - Variable with value to subtract.

MultiplyBy(System.Int32)

Multiply variable by value.

Parameters
  • value - Value to multiple by.

MultiplyBy(UnityAtoms.AtomBaseVariable{System.Int32})

Multiply variable by Variable value.

Parameters
  • variable - Variable with value to multiple by.

DivideBy(System.Int32)

Divide Variable by value.

Parameters
  • value - Value to divide by.

DivideBy(UnityAtoms.AtomBaseVariable{System.Int32})

Divide Variable by Variable value.

Parameters
  • variable - Variable value to divide by.

FloatVariable

Variable of type float. Inherits from EquatableAtomVariable<float, FloatEvent, FloatFloatEvent, FloatFloatFunction>.

Methods

Add(System.Single)

Add value to Variable.

Parameters
  • value - Value to add.

Add(UnityAtoms.AtomBaseVariable{System.Single})

Add variable value to Variable.

Parameters
  • variable - Variable with value to add.

Subtract(System.Single)

Subtract value from Variable.

Parameters
  • value - Value to subtract.

Subtract(UnityAtoms.AtomBaseVariable{System.Single})

Subtract variable value from Variable.

Parameters
  • variable - Variable with value to subtract.

MultiplyBy(System.Single)

Multiply variable by value.

Parameters
  • value - Value to multiple by.

MultiplyBy(UnityAtoms.AtomBaseVariable{System.Single})

Multiply variable by Variable value.

Parameters
  • variable - Variable with value to multiple by.

DivideBy(System.Single)

Divide Variable by value.

Parameters
  • value - Value to divide by.

DivideBy(UnityAtoms.AtomBaseVariable{System.Single})

Divide Variable by Variable value.

Parameters
  • variable - Variable value to divide by.

StringVariable

Variable of type string. Inherits from EquatableAtomVariable<string, StringEvent, StringStringEvent, StringStringFunction>.


AtomVariable<T,E1,E2,F>

Type Parameters

  • T - The Variable value type.
  • E1 - Event of type AtomEvent<T>.
  • E2 - Event of type AtomEvent<T, T>.
  • F - Function of type FunctionEvent<T, T>.

Generic base class for Variables. Inherits from AtomBaseVariable<T>.

Variables

_initialValue

The inital value of the Variable.


Changed

Changed Event triggered when the Variable value gets changed.


ChangedWithHistory

Changed with history Event triggered when the Variable value gets changed.

Properties

Value

The Variable value as a property.


InitialValue

The inital Variable value as a property.


OldValue

The value the Variable had before its value got changed last time.


PreChangeTransformers

When setting the value of a Variable the new value will be piped through all the pre change transformers, which allows you to create custom logic and restriction on for example what values can be set for this Variable.

Methods

Reset(System.Boolean)

Reset the Variable to its _initalValue.

Parameters
  • shouldTriggerEvents - Set to true if Events should be triggered on reset, otherwise false.

SetValue(newValue)

Set the Variable value.

Parameters
  • newValue - The new value to set.
Returns

true if the value got changed, otherwise false.


SetValue(variable)

Set the Variable value.

Parameters
  • variable - The value to set provided from another Variable.
Returns

true if the value got changed, otherwise false.


ObserveChange

Turn the Variable's change Event into an IObservable<T>. Makes the Variable's change Event compatible with for example UniRx.

Returns

The Variable's change Event as an IObservable<T>.


ObserveChangeWithHistory

Turn the Variable's change with history Event into an IObservable<T, T>. Makes the Variable's change with history Event compatible with for example UniRx.

Returns

The Variable's change Event as an IObservable<T, T>.


GameObjectVariable

Variable of type GameObject. Inherits from AtomVariable<GameObject, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction>.


Collider2DVariable

Variable of type Collider2D. Inherits from AtomVariable<Collider2D, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction>.


ColorVariable

Variable of type Color. Inherits from EquatableAtomVariable<Color, ColorEvent, ColorColorEvent, ColorColorFunction>.

Methods

SetAlpha(System.Single)

Set Alpha of Color by value.

Parameters
  • value - New alpha value.

SetAlpha(UnityAtoms.AtomBaseVariable{System.Single})

Set Alpha of Color by Variable value.

Parameters
  • variable - New alpha Variable value.

Vector3Variable

Variable of type Vector3. Inherits from EquatableAtomVariable<Vector3, Vector3Event, Vector3Vector3Event, Vector3Vector3Function>.

Methods

MultiplyBy(System.Single)

Multiply variable by value.

Parameters
  • value - Value to multiple by.

MultiplyBy(UnityAtoms.AtomBaseVariable{System.Single})

Multiply variable by Variable value.

Parameters
  • variable - Variable with value to multiple by.

DivideBy(System.Single)

Divide Variable by value.

Parameters
  • value - Value to divide by.

DivideBy(UnityAtoms.AtomBaseVariable{System.Single})

Divide Variable by Variable value.

Parameters
  • variable - Variable value to divide by.

AtomList

A List of Atom Variables (AtomBaseVariable).

Properties

Added

Event for when and item is added to the list.


Removed

Event for when and item is removed from the list.


Cleared

Event for when the list is cleared.

Methods

ObserveAdd

Make the add event into an IObservable<T>. Makes List's add Event compatible with for example UniRx.

Returns

The add Event as an IObservable<T>.


ObserveRemove

Make the remove event into an IObservable<T>. Makes List's remove Event compatible with for example UniRx.

Returns

The remove Event as an IObservable<T>.


ObserveClear

Make the clear event into an IObservable<Void>. Makes List's clear Event compatible with for example UniRx.

Returns

The clear Event as an IObservable<Void>.


AtomBaseVariableList

A List of type AtomBaseVariable. Used by AtomList.

Methods

Get<T>(System.Int32)

Generic getter.

Type Parameters

  • T - The expected type of the value you want to retrieve.
Parameters
  • index - The index you want to retrieve.
Returns

The value of type T at specified index.


Get<T>(UnityAtoms.AtomBaseVariable{System.Int32})

Generic getter.

Type Parameters

  • T - The expected type of the value you want to retrieve.
Parameters
  • index - The index you want to retrieve.
Returns

The value of type T at specified index.


Add(UnityAtoms.AtomBaseVariable)

Add an item to the list.

Parameters
  • item - The item to add.

Remove(UnityAtoms.AtomBaseVariable)

Remove an item from the list.

Parameters
  • item - The item to remove.
Returns

True if it was removed, otherwise false..


RemoveAt(System.Int32)

Remove an item at provided index.

Parameters
  • index - The index to remove item at.

Insert(System.Int32,UnityAtoms.AtomBaseVariable)

Insert item at index.

Parameters
  • index - Index to insert item at.
  • item - Item to insert.

Clear

Ckear list.


AtomBaseVariableAction

Action of type AtomBaseVariable. Inherits from AtomAction<AtomBaseVariable>.


AtomAction

Base abstract class for Actions. Inherits from BaseAtom.

Variables

ActionNoValue

The actual Action.

Methods

Do

Perform the Action.


AtomAction<T1>

Type Parameters

  • T1 - The type for this Action.

Generic abstract base class for Actions. Inherits from AtomAction.

Variables

Action

The actual Action.

Methods

Do(t1)

Perform the Action.

Parameters
  • t1 - The first parameter.

AtomAction<T1,T2>

Type Parameters

  • T1 - The first type for this Action.
  • T2 - The second type for this Action.

Generic abstract base class for Actions. Inherits from AtomAction.

Variables

Action

The actual Action.

Methods

Do(t1,t2)

Perform the Action.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.

AtomAction<T1,T2,T3>

Type Parameters

  • T1 - The first type for this Action.
  • T2 - The second type for this Action.
  • T3 - The third type for this Action.

Generic abstract base class for Actions. Inherits from AtomAction.

Variables

Action

The actual Action.

Methods

Do(t1,t2,t3)

Perform the Action.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.

AtomAction<T1,T2,T3,T4>

Type Parameters

  • T1 - The first type for this Action.
  • T2 - The second type for this Action.
  • T3 - The third type for this Action.
  • T4 - The fourth type for this Action.

Generic abstract base class for Actions. Inherits from AtomAction.

Variables

Action

The actual Action.

Methods

Do(t1,t2,t3,t4)

Perform the Action.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.
  • t4 - The fourth parameter.

AtomAction<T1,T2,T3,T4,T5>

Type Parameters

  • T1 - The first type for this Action.
  • T2 - The second type for this Action.
  • T3 - The third type for this Action.
  • T4 - The fourth type for this Action.
  • T5 - The fifth type for this Action.

Generic abstract base class for Actions. Inherits from AtomAction.

Variables

Action

The actual Action.

Methods

Do(t1,t2,t3,t4,t5)

Perform the Action.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.
  • t4 - The fourth parameter.
  • t5 - The fifth parameter.

StringStringAction

Action x 2 of type string. Inherits from AtomAction<string, string>.


GameObjectAction

Action of type GameObject. Inherits from AtomAction<GameObject>.


FloatFloatAction

Action x 2 of type float. Inherits from AtomAction<float, float>.


Vector2Action

Action of type Vector2. Inherits from AtomAction<Vector2>.


Vector3Action

Action of type Vector3. Inherits from AtomAction<Vector3>.


VoidAction

Action of type Void. Inherits from AtomAction<Void>.

Methods

Do(UnityAtoms.Void)

Do the Action.

Parameters
  • _ - Dummy Void parameter.

ColorAction

Action of type Color. Inherits from AtomAction<Color>.


IntIntAction

Action x 2 of type int. Inherits from AtomAction<int, int>.


BoolBoolAction

Action x 2 of type bool. Inherits from AtomAction<bool, bool>.


ColliderAction

Action of type Collider. Inherits from AtomAction<Collider>.


StringAction

Action of type string. Inherits from AtomAction<string>.


ColorColorAction

Action x 2 of type Color. Inherits from AtomAction<Color, Color>.


BoolAction

Action of type bool. Inherits from AtomAction<bool>.


Vector3Vector3Action

Action x 2 of type Vector3. Inherits from AtomAction<Vector3, Vector3>.


IntAction

Action of type int. Inherits from AtomAction<int>.


FloatAction

Action of type float. Inherits from AtomAction<float>.


Collider2DCollider2DAction

Action x 2 of type Collider2D. Inherits from AtomAction<Collider2D, Collider2D>.


Collider2DAction

Action of type Collider2D. Inherits from AtomAction<Collider2D>.


ColliderColliderAction

Action x 2 of type Collider. Inherits from AtomAction<Collider, Collider>.


GameObjectGameObjectAction

Action x 2 of type GameObject. Inherits from AtomAction<GameObject, GameObject>.


Vector2Vector2Action

Action x 2 of type Vector2. Inherits from AtomAction<Vector2, Vector2>.


FloatFloatFunction

Function x 2 of type float. Inherits from AtomFunction<float, float>.


Vector3Vector3Function

Function x 2 of type Vector3. Inherits from AtomFunction<Vector3, Vector3>.


AtomFunction<R>

Type Parameters

  • R - The type to return from the Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call

Call the Function.

Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<R>.

Parameters
  • func - The Func<R> to set.
Returns

An AtomFunction<R>.


AtomFunction<R,T1>

Type Parameters

  • R - The type to return from the Function.
  • T1 - The parameter type for this Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call(t1)

Call the Function.

Parameters
  • t1 - The first parameter.
Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<T1, R>.

Parameters
  • func - The Func<T1, R> to set.
Returns

An AtomFunction<R, T1>.


AtomFunction<R,T1,T2>

Type Parameters

  • R - The type to return from the Function.
  • T1 - The first parameter type for this Function.
  • T2 - The second parameter type for this Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call(t1,t2)

Call the Function.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<T1, T2, R>.

Parameters
  • func - The Func<T1, T2, R> to set.
Returns

An AtomFunction<R, T1, T2>.


AtomFunction<R,T1,T2,T3>

Type Parameters

  • R - The type to return from the Function.
  • T1 - The first parameter type for this Function.
  • T2 - The second parameter type for this Function.
  • T3 - The third parameter type for this Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call(t1,t2,t3)

Call the Function.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.
Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<T1, T2, T3, R>.

Parameters
  • func - The Func<T1, T2, T3, R> to set.
Returns

An AtomFunction<R, T1, T2, T3>.


AtomFunction<R,T1,T2,T3,T4>

Type Parameters

  • R - The type to return from the Function.
  • T1 - The first parameter type for this Function.
  • T2 - The second parameter type for this Function.
  • T3 - The third parameter type for this Function.
  • T4 - The fourth parameter type for this Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call(t1,t2,t3,t4)

Call the Function.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.
  • t4 - The fourth parameter.
Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<T1, T2, T3, T4 R>.

Parameters
  • func - The Func<T1, T2, T3, T4, R> to set.
Returns

An AtomFunction<R, T1, T2, T3, T4>.


AtomFunction<R,T1,T2,T3,T4,T5>

Type Parameters

  • R - The type to return from the Function.
  • T1 - The first parameter type for this Function.
  • T2 - The second parameter type for this Function.
  • T3 - The third parameter type for this Function.
  • T4 - The fourth parameter type for this Function.
  • T5 - The fifth parameter type for this Function.

Generic abstract base class for Functions. Inherits from BaseAtom.

Variables

Func

The actual function.

Methods

Call(t1,t2,t3,t4,t5)

Call the Function.

Parameters
  • t1 - The first parameter.
  • t2 - The second parameter.
  • t3 - The third parameter.
  • t4 - The fourth parameter.
  • t5 - The fifth parameter.
Returns

Whatever the function decides to return of type R.


SetFunc(func)

Set the Function providing a Func<T1, T2, T3, T4, T5 R>.

Parameters
  • func - The Func<T1, T2, T3, T4, T5, R> to set.
Returns

An AtomFunction<R, T1, T2, T3, T4, T5>.


IntIntFunction

Function x 2 of type int. Inherits from AtomFunction<int, int>.


BoolBoolFunction

Function x 2 of type bool. Inherits from AtomFunction<bool, bool>.


Collider2DCollider2DFunction

Function x 2 of type Collider2D. Inherits from AtomFunction<Collider2D, Collider2D>.


Vector2Vector2Function

Function x 2 of type Vector2. Inherits from AtomFunction<Vector2, Vector2>.


GameObjectGameObjectFunction

Function x 2 of type GameObject. Inherits from AtomFunction<GameObject, GameObject>.


StringStringFunction

Function x 2 of type string. Inherits from AtomFunction<string, string>.


ColorColorFunction

Function x 2 of type Color. Inherits from AtomFunction<Color, Color>.


ColliderColliderFunction

Function x 2 of type Collider. Inherits from AtomFunction<Collider, Collider>.


Collider2DCollider2DEvent

Event x 2 of type Collider2D. Inherits from AtomEvent<Collider2D, Collider2D>.


BoolBoolEvent

Event x 2 of type bool. Inherits from AtomEvent<bool, bool>.


IntIntEvent

Event x 2 of type int. Inherits from AtomEvent<int, int>.


StringStringEvent

Event x 2 of type string. Inherits from AtomEvent<string, string>.


AtomEventBase

None generic base class for Events. Inherits from BaseAtom and ISerializationCallbackReceiver.

Methods

Register(System.Action)

Register handler to be called when the Event triggers.

Parameters
  • del - The handler.

Unregister(System.Action)

Unregister handler that was registered using the Register method.

Parameters
  • del - The handler.

RegisterListener(UnityAtoms.IAtomListener)

Register a Listener that in turn trigger all its associated handlers when the Event triggers.

Parameters
  • listener - The Listener to register.

UnregisterListener(UnityAtoms.IAtomListener)

Unregister a listener that was registered using the RegisterListener method.

Parameters
  • listener - The Listener to unregister.

ColliderEvent

Event of type Collider. Inherits from AtomEvent<Collider>.


ColorColorEvent

Event x 2 of type Color. Inherits from AtomEvent<Color, Color>.


GameObjectEvent

Event of type GameObject. Inherits from AtomEvent<GameObject>.


ColliderColliderEvent

Event x 2 of type Collider. Inherits from AtomEvent<Collider, Collider>.


Vector2Vector2Event

Event x 2 of type Vector2. Inherits from AtomEvent<Vector2, Vector2>.


Vector3Vector3Event

Event x 2 of type Vector3. Inherits from AtomEvent<Vector3, Vector3>.


AtomEvent<T>

Type Parameters

  • T - The type for this Event.

Generic base class for Events. Inherits from AtomEventBase.

Variables

_replayBufferSize

The event replays the specified number of old values to new subscribers. Works like a ReplaySubject in Rx.


_raiseValue

Used when raising values from the inspector for debugging purposes.

Methods

Raise(item)

Raise the Event.

Parameters
  • item - The value associated with the Event.

Register(action)

Register handler to be called when the Event triggers.

Parameters
  • action - The handler.

Unregister(action)

Unregister handler that was registered using the Register method.

Parameters
  • action - The handler.

RegisterListener(listener)

Register a Listener that in turn trigger all its associated handlers when the Event triggers.

Parameters
  • listener - The Listener to register.

UnregisterListener(listener)

Unregister a listener that was registered using the RegisterListener method.

Parameters
  • listener - The Listener to unregister.

Observe

Turn the Event into an IObservable<T>. Makes Events compatible with for example UniRx.

Returns

The Event as an IObservable<T>.


AtomEvent<T1,T2>

Type Parameters

  • T1 - The first type for this Event.
  • T2 - The second type for this Event.

Generic base class for Events. Inherits from AtomEventBase.

Variables

_replayBufferSize

The event replays the specified number of old values to new subscribers. Works like a ReplaySubject in Rx.


_raiseValue1

Used when raising values from the inspector for debugging purposes.


_raiseValue2

Used when raising values from the inspector for debugging purposes.

Methods

Raise(item1,item2)

Raise the Event.

Parameters
  • item1 - The first value associated with the Event.
  • item2 - The second value associated with the Event.

Register(action)

Register handler to be called when the Event triggers.

Parameters
  • action - The handler.

Unregister(action)

Unregister handler that was registered using the Register method.

Parameters
  • action - The handler.

RegisterListener(listener)

Register a Listener that in turn trigger all its associated handlers when the Event triggers.

Parameters
  • listener - The Listener to register.

UnregisterListener(listener)

Unregister a listener that was registered using the RegisterListener method.

Parameters
  • listener - The Listener to unregister.

Observe<M>(resultSelector)

Turn the Event into an IObservable<M>. Makes Events compatible with for example UniRx.

Type Parameters

  • M - The result selector type.
Parameters
  • resultSelector - Takes T1 and T2 and returns a new type of type M.abstract Most of the time this is going to be combination of T1 and T2, eg. ValueTuple<T1, T2>
Returns

The Event as an IObservable<M>.


Vector3Event

Event of type Vector3. Inherits from AtomEvent<Vector3>.


BoolEvent

Event of type bool. Inherits from AtomEvent<bool>.


GameObjectGameObjectEvent

Event x 2 of type GameObject. Inherits from AtomEvent<GameObject, GameObject>.


StringEvent

Event of type string. Inherits from AtomEvent<string>.


AtomBaseVariableEvent

Event of type AtomBaseVariable. Inherits from AtomEvent<AtomBaseVariable>.


ColorEvent

Event of type Color. Inherits from AtomEvent<Color>.


VoidEvent

Event of type Void. Inherits from AtomEvent<Void>.


Vector2Event

Event of type Vector2. Inherits from AtomEvent<Vector2>.


FloatEvent

Event of type float. Inherits from AtomEvent<float>.


FloatFloatEvent

Event x 2 of type float. Inherits from AtomEvent<float, float>.


Collider2DEvent

Event of type Collider2D. Inherits from AtomEvent<Collider2D>.


IntEvent

Event of type int. Inherits from AtomEvent<int>.


FloatFloatListener

Listener x 2 of type float. Inherits from AtomX2Listener<float, FloatFloatAction, FloatVariable, FloatEvent, FloatFloatEvent, FloatFloatFunction, FloatVariableInstancer, FloatFloatEventReference, FloatFloatUnityEvent>.


Collider2DListener

Listener of type Collider2D. Inherits from AtomListener<Collider2D, Collider2DAction, Collider2DVariable, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction, Collider2DVariableInstancer, Collider2DEventReference, Collider2DUnityEvent>.


Vector3Vector3Listener

Listener x 2 of type Vector3. Inherits from AtomX2Listener<Vector3, Vector3Vector3Action, Vector3Variable, Vector3Event, Vector3Vector3Event, Vector3Vector3Function, Vector3VariableInstancer, Vector3Vector3EventReference, Vector3Vector3UnityEvent>.


GameObjectListener

Listener of type GameObject. Inherits from AtomListener<GameObject, GameObjectAction, GameObjectVariable, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction, GameObjectVariableInstancer, GameObjectEventReference, GameObjectUnityEvent>.


AtomListener<T,A,V,E1,E2,F,VI,ER,UER>

Type Parameters

  • T - The type that we are listening for.
  • A - Acion of type T.
  • V - Variable of type T.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T.
  • VI - Variable Instancer of type T.
  • ER - Event Reference of type T.
  • UER - UnityEvent of type T.

Generic base class for Listeners. Inherits from AtomBaseListener and implements IAtomListener<T>.

Variables

_eventReference

The Event Reference that we are listening to.


_unityEventResponse

The Unity Event responses. NOTE: This variable is public due to this bug: https://issuetracker.unity3d.com/issues/events-generated-by-the-player-input-component-do-not-have-callbackcontext-set-as-their-parameter-type. Will be changed back to private when fixed (this could happen in a none major update).


_actionResponses

The Action responses;

Properties

EventReference

The Event we are listening for as a property.

Methods

OnEventRaised(item)

Handler for when the Event gets raised.

Parameters
  • item - The Event type.

DebugLog(0)`

Helper to regiser as listener callback


StringListener

Listener of type string. Inherits from AtomListener<string, StringAction, StringVariable, StringEvent, StringStringEvent, StringStringFunction, StringVariableInstancer, StringEventReference, StringUnityEvent>.


BoolBoolListener

Listener x 2 of type bool. Inherits from AtomX2Listener<bool, BoolBoolAction, BoolVariable, BoolEvent, BoolBoolEvent, BoolBoolFunction, BoolVariableInstancer, BoolBoolEventReference, BoolBoolUnityEvent>.


FloatListener

Listener of type float. Inherits from AtomListener<float, FloatAction, FloatVariable, FloatEvent, FloatFloatEvent, FloatFloatFunction, FloatVariableInstancer, FloatEventReference, FloatUnityEvent>.


IntIntListener

Listener x 2 of type int. Inherits from AtomX2Listener<int, IntIntAction, IntVariable, IntEvent, IntIntEvent, IntIntFunction, IntVariableInstancer, IntIntEventReference, IntIntUnityEvent>.


ColliderListener

Listener of type Collider. Inherits from AtomListener<Collider, ColliderAction, ColliderVariable, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction, ColliderVariableInstancer, ColliderEventReference, ColliderUnityEvent>.


IntListener

Listener of type int. Inherits from AtomListener<int, IntAction, IntVariable, IntEvent, IntIntEvent, IntIntFunction, IntVariableInstancer, IntEventReference, IntUnityEvent>.


Collider2DCollider2DListener

Listener x 2 of type Collider2D. Inherits from AtomX2Listener<Collider2D, Collider2DCollider2DAction, Collider2DVariable, Collider2DEvent, Collider2DCollider2DEvent, Collider2DCollider2DFunction, Collider2DVariableInstancer, Collider2DCollider2DEventReference, Collider2DCollider2DUnityEvent>.


Vector2Listener

Listener of type Vector2. Inherits from AtomListener<Vector2, Vector2Action, Vector2Variable, Vector2Event, Vector2Vector2Event, Vector2Vector2Function, Vector2VariableInstancer, Vector2EventReference, Vector2UnityEvent>.


AtomBaseListener

None generic base class for all Listeners.

Variables

_developerDescription

A description of the Listener made for documentation purposes.


BoolListener

Listener of type bool. Inherits from AtomListener<bool, BoolAction, BoolVariable, BoolEvent, BoolBoolEvent, BoolBoolFunction, BoolVariableInstancer, BoolEventReference, BoolUnityEvent>.


Vector2Vector2Listener

Listener x 2 of type Vector2. Inherits from AtomX2Listener<Vector2, Vector2Vector2Action, Vector2Variable, Vector2Event, Vector2Vector2Event, Vector2Vector2Function, Vector2VariableInstancer, Vector2Vector2EventReference, Vector2Vector2UnityEvent>.


AtomBaseVariableListener

A listener of type BaseAtomVariable.

Variables

_event

The Event that we are listening to.


_unityEventResponse

The Unity Event responses. NOTE: This variable is public due to this bug: https://issuetracker.unity3d.com/issues/events-generated-by-the-player-input-component-do-not-have-callbackcontext-set-as-their-parameter-type. Will be changed back to private when fixed (this could happen in a none major update).


_actionResponses

The Action responses;

Properties

Event

The Event we are listening for as a property.

Methods

OnEventRaised(UnityAtoms.AtomBaseVariable)

Handler for when the Event gets raised.

Parameters
  • item - The Event type.

DebugLog(UnityAtoms.AtomBaseVariable)

Helper to regiser as listener callback


GameObjectGameObjectListener

Listener x 2 of type GameObject. Inherits from AtomX2Listener<GameObject, GameObjectGameObjectAction, GameObjectVariable, GameObjectEvent, GameObjectGameObjectEvent, GameObjectGameObjectFunction, GameObjectVariableInstancer, GameObjectGameObjectEventReference, GameObjectGameObjectUnityEvent>.


Vector3Listener

Listener of type Vector3. Inherits from AtomListener<Vector3, Vector3Action, Vector3Variable, Vector3Event, Vector3Vector3Event, Vector3Vector3Function, Vector3VariableInstancer, Vector3EventReference, Vector3UnityEvent>.


AtomX2Listener<T,A,V,E1,E2,F,VI,E2R,UER>

Type Parameters

  • T - The type that we are listening for.
  • A - Acion of type T.
  • V - Variable of type T.
  • E1 - Event of type T.
  • E2 - Event x 2 of type T.
  • F - Function of type T => T.
  • VI - Variable Instancer of type T.
  • E2R - Event x 2 Reference of type T.
  • UER - UnityEvent of type T.

Generic base class for X2 Listeners. Inherits from AtomBaseListener and implements IAtomListener<T>.

Variables

_eventReference

The Event Reference that we are listening to.


_unityEventResponse

The Unity Event responses. NOTE: This variable is public due to this bug: https://issuetracker.unity3d.com/issues/events-generated-by-the-player-input-component-do-not-have-callbackcontext-set-as-their-parameter-type. Will be changed back to private when fixed (this could happen in a none major update).


_actionResponses

The Action responses;

Properties

EventReference

The Event we are listening for as a property.

Methods

OnEventRaised(first,second)

Handler for when the Event gets raised.

Parameters
  • first - The first Event type.
  • second - The second Event type.

DebugLog(0,0)

Helper to regiser as listener callback


StringStringListener

Listener x 2 of type string. Inherits from AtomX2Listener<string, StringStringAction, StringVariable, StringEvent, StringStringEvent, StringStringFunction, StringVariableInstancer, StringStringEventReference, StringStringUnityEvent>.


ColorColorListener

Listener x 2 of type Color. Inherits from AtomX2Listener<Color, ColorColorAction, ColorVariable, ColorEvent, ColorColorEvent, ColorColorFunction, ColorVariableInstancer, ColorColorEventReference, ColorColorUnityEvent>.


VoidListener

The most basic Listener. Can use every type of AtomEvent but doesn't support its value. Inherits from AtomBaseListener and implements IAtomListener.

Variables

_event

The Event that we are listening to.


_unityEventResponse

The Unity Event responses. NOTE: This variable is public due to this bug: https://issuetracker.unity3d.com/issues/events-generated-by-the-player-input-component-do-not-have-callbackcontext-set-as-their-parameter-type. Will be changed back to private when fixed (this could happen in a none major update).


_actionResponses

The Action responses;

Properties

Event

The Event we are listening for as a property.

Methods

OnEventRaised

Handler for when the Event gets raised.


ColliderColliderListener

Listener x 2 of type Collider. Inherits from AtomX2Listener<Collider, ColliderColliderAction, ColliderVariable, ColliderEvent, ColliderColliderEvent, ColliderColliderFunction, ColliderVariableInstancer, ColliderColliderEventReference, ColliderColliderUnityEvent>.


ColorListener

Listener of type Color. Inherits from AtomListener<Color, ColorAction, ColorVariable, ColorEvent, ColorColorEvent, ColorColorFunction, ColorVariableInstancer, ColorEventReference, ColorUnityEvent>.


BaseAtom

None generic base class for all Atoms.

Variables

_developerDescription

A description of the Atom made for documentation purposes.


FloatValueList

Value List of type float. Inherits from AtomValueList<float, FloatEvent>.


Vector2ValueList

Value List of type Vector2. Inherits from AtomValueList<Vector2, Vector2Event>.


BoolValueList

Value List of type bool. Inherits from AtomValueList<bool, BoolEvent>.


ColorValueList

Value List of type Color. Inherits from AtomValueList<Color, ColorEvent>.


ColliderValueList

Value List of type Collider. Inherits from AtomValueList<Collider, ColliderEvent>.


IntValueList

Value List of type int. Inherits from AtomValueList<int, IntEvent>.


GameObjectValueList

Value List of type GameObject. Inherits from AtomValueList<GameObject, GameObjectEvent>.


Collider2DValueList

Value List of type Collider2D. Inherits from AtomValueList<Collider2D, Collider2DEvent>.


Vector3ValueList

Value List of type Vector3. Inherits from AtomValueList<Vector3, Vector3Event>.


AtomValueList<T,E>

Type Parameters

  • T - The list item type.
  • E - Event of type AtomEvent<T>.

Generic base class for Lists. Inherits from BaseAtomList and IList<T>.

Variables

Added

Event for when something is added to the list.


Removed

Event for when something is removed from the list.


list

Actual List<T>.

Properties

Count

Get the count of the list.


IsReadOnly

Is the list read only?


List

The actual List<T> as a property.


Item(System.Int32)

Indexer of the list.

Methods

Add(item)

Add an item to the list.

Parameters
  • item - The item to add.

Remove(item)

Remove an item from the list.

Parameters
  • item - The item to remove.
Returns

True if it was removed, otherwise false..


Contains(item)

Does the list contain the item provided?

Parameters
  • item - The item to check if it is contained in the list.
Returns

true if the item exists in the list, otherwise false.


Get(System.Int32)

Get item at index.

Parameters
  • i - The index.
Returns

The item if it exists.


CopyTo(array,arrayIndex)

Copies the entire List to a compatible one-dimensional array, starting at the specified index of the target array.

Parameters
  • array - The one-dimensional Array that is the destination of the elements copied from List. The Array must have zero-based indexing.
  • arrayIndex - The zero-based index in array at which copying begins.

GetEnumerator

Get an IEnumerator<T> of the list.

Returns

An IEnumerator<T>


IndexOf(item)

Returns the index of the specified item.

Parameters
  • item - The item to search for.
Returns

The zero-based index of the first occurrence of item. If not found it returns -1.


RemoveAt(System.Int32)

Remove an item at provided index.

Parameters
  • index - The index to remove item at.

Insert(index,item)

Insert item at index.

Parameters
  • index - Index to insert item at.
  • item - Item to insert.

ObserveAdd

Make the add event into an IObservable<T>. Makes Value List's add Event compatible with for example UniRx.

Returns

The add Event as an IObservable<T>.


ObserveRemove

Make the remove event into an IObservable<T>. Makes Value List's remove Event compatible with for example UniRx.

Returns

The remove Event as an IObservable<T>.


ObserveClear

Make the clear event into an IObservable<Void>. Makes Value List's clear Event compatible with for example UniRx.

Returns

The clear Event as an IObservable<Void>.


StringValueList

Value List of type string. Inherits from AtomValueList<string, StringEvent>.


BaseAtomValueList

None generic base class of Lists. Inherits from BaseAtom.

Variables

Cleared

Event for when the list is cleared.

Methods

Clear

Clear the list.


StringExtensions

Internal extension class for strings.

Methods

ToInt(System.String,System.Int32)

Tries to parse a string to an int.

Parameters
  • str - The string to parse.
  • def - The default value if not able to parse the provided string.
Returns

Returns the string parsed to an int. If not able to parse the string, it returns the default value provided to the method.


Repeat(System.String,System.Int32)

Repeats the string X amount of times.

Parameters
  • str - The string to repeat.
  • times - The number of times to repeat the provided string.
Returns

The string repeated X amount of times.


EditorIcon

Specify a texture name from your assets which you want to be assigned as an icon to the MonoScript.


SetVector2VariableValue

Set variable value Action of type Vector2. Inherits from SetVariableValue<Vector2, Vector2Variable, Vector2Constant, Vector2Reference, Vector2Event, Vector2Vector2Event, Vector2VariableInstancer>.


SetColorVariableValue

Set variable value Action of type Color. Inherits from SetVariableValue<Color, ColorVariable, ColorConstant, ColorReference, ColorEvent, ColorColorEvent, ColorVariableInstancer>.


SetCollider2DVariableValue

Set variable value Action of type Collider2D. Inherits from SetVariableValue<Collider2D, Collider2DVariable, Collider2DConstant, Collider2DReference, Collider2DEvent, Collider2DCollider2DEvent, Collider2DVariableInstancer>.


SetBoolVariableValue

Set variable value Action of type bool. Inherits from SetVariableValue<bool, BoolVariable, BoolConstant, BoolReference, BoolEvent, BoolBoolEvent, BoolVariableInstancer>.


SetFloatVariableValue

Set variable value Action of type float. Inherits from SetVariableValue<float, FloatVariable, FloatConstant, FloatReference, FloatEvent, FloatFloatEvent, FloatVariableInstancer>.


SetVector3VariableValue

Set variable value Action of type Vector3. Inherits from SetVariableValue<Vector3, Vector3Variable, Vector3Constant, Vector3Reference, Vector3Event, Vector3Vector3Event, Vector3VariableInstancer>.


SetVariableValue<T,V,C,R,E1,E2,F,VI>

Type Parameters

  • T - The type of the Variable to set.
  • V - A Variable class of type type to set.
  • C - A Constant class of type type to set.
  • R - A Reference of type type.
  • E1 - An Event of type type.
  • E2 - An Event x 2 of type type.
  • F - A Function x 2 of type type.
  • VI - A Variable Instancer of type type.

Base class for all SetVariableValue Actions. Inherits from VoidAction.

Variables

_variable

The Variable to set.


_value

The value to set.

Methods

Do

Perform the action.


SetGameObjectVariableValue

Set variable value Action of type GameObject. Inherits from SetVariableValue<GameObject, GameObjectVariable, GameObjectConstant, GameObjectReference, GameObjectEvent, GameObjectGameObjectEvent, GameObjectVariableInstancer>.


SetStringVariableValue

Set variable value Action of type string. Inherits from SetVariableValue<string, StringVariable, StringConstant, StringReference, StringEvent, StringStringEvent, StringVariableInstancer>.


SetIntVariableValue

Set variable value Action of type int. Inherits from SetVariableValue<int, IntVariable, IntConstant, IntReference, IntEvent, IntIntEvent, IntVariableInstancer>.


SetColliderVariableValue

Set variable value Action of type Collider. Inherits from SetVariableValue<Collider, ColliderVariable, ColliderConstant, ColliderReference, ColliderEvent, ColliderColliderEvent, ColliderVariableInstancer>.


ClampInt

An AtomFunction<int, int> that clamps the value using a min and a max value and returns it.

Variables

Min

The minimum value.


Max

The maximum value.


ClampFloat

An AtomFunction<float, float> that clamps the value using a min and a max value and returns it.

Variables

Min

The minimum value.


Max

The maximum value.