2019-10-14 20:08:41 -04:00
---
id: unityatoms
title: UnityAtoms
hide_title: true
sidebar_label: UnityAtoms
---
# Namespace - `UnityAtoms`
2019-10-15 13:19:44 -04:00
## `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.
---
## `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.
---
## `AtomAction<T1>`
#### Type Parameters
- `T1` - The type for this Action.
Generic abstract base class for Actions. Inherits from `BaseAtom` .
2019-10-15 14:44:25 -04:00
### 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 `BaseAtom` .
### 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 `BaseAtom` .
### 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 `BaseAtom` .
### 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 `BaseAtom` .
### 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.
---
2019-10-15 16:23:46 -04:00
## `BoolAction`
Action of type `bool` . Inherits from `AtomAction<bool>` .
---
## `BoolBoolAction`
Action x 2 of type `bool` . Inherits from `AtomAction<bool, bool>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DAction`
Action of type `Collider2D` . Inherits from `AtomAction<Collider2D>` .
---
## `Collider2DCollider2DAction`
Action x 2 of type `Collider2D` . Inherits from `AtomAction<Collider2D, Collider2D>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderAction`
Action of type `Collider` . Inherits from `AtomAction<Collider>` .
---
## `ColliderColliderAction`
Action x 2 of type `Collider` . Inherits from `AtomAction<Collider, Collider>` .
---
2019-10-15 16:24:44 -04:00
## `ColorAction`
Action of type `Color` . Inherits from `AtomAction<Color>` .
---
## `ColorColorAction`
Action x 2 of type `Color` . Inherits from `AtomAction<Color, Color>` .
---
2019-10-15 16:29:05 -04:00
## `FloatAction`
Action of type `float` . Inherits from `AtomAction<float>` .
---
## `FloatFloatAction`
Action x 2 of type `float` . Inherits from `AtomAction<float, float>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectAction`
Action of type `GameObject` . Inherits from `AtomAction<GameObject>` .
---
## `GameObjectGameObjectAction`
Action x 2 of type `GameObject` . Inherits from `AtomAction<GameObject, GameObject>` .
---
2019-10-15 16:32:06 -04:00
## `IntAction`
Action of type `int` . Inherits from `AtomAction<int>` .
---
## `IntIntAction`
Action x 2 of type `int` . Inherits from `AtomAction<int, int>` .
---
2019-10-15 16:33:06 -04:00
## `StringAction`
Action of type `string` . Inherits from `AtomAction<string>` .
---
## `StringStringAction`
Action x 2 of type `string` . Inherits from `AtomAction<string, string>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2Action`
Action of type `Vector2` . Inherits from `AtomAction<Vector2>` .
---
## `Vector2Vector2Action`
Action x 2 of type `Vector2` . Inherits from `AtomAction<Vector2, Vector2>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3Action`
Action of type `Vector3` . Inherits from `AtomAction<Vector3>` .
---
## `Vector3Vector3Action`
Action x 2 of type `Vector3` . Inherits from `AtomAction<Vector3, Vector3>` .
---
2019-10-15 14:44:25 -04:00
## `VoidAction`
2019-10-15 16:37:15 -04:00
Action of type `Void` . Inherits from `AtomAction<Void>` .
2019-10-15 14:44:25 -04:00
### Methods
#### `Do(UnityAtoms.Void)`
Do the Action.
##### Parameters
- `_` - Dummy Void parameter.
---
#### `Do`
Do the Action.
---
2019-10-15 16:23:46 -04:00
## `SetBoolVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `bool` . Inherits from `SetVariableValue<bool, BoolVariable, BoolConstant, BoolReference, BoolEvent, BoolBoolEvent>` .
2019-10-15 16:23:46 -04:00
---
2019-10-15 16:27:22 -04:00
## `SetCollider2DVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `Collider2D` . Inherits from `SetVariableValue<Collider2D, Collider2DVariable, Collider2DConstant, Collider2DReference, Collider2DEvent, Collider2DCollider2DEvent>` .
2019-10-15 16:27:22 -04:00
---
2019-10-15 16:26:14 -04:00
## `SetColliderVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `Collider` . Inherits from `SetVariableValue<Collider, ColliderVariable, ColliderConstant, ColliderReference, ColliderEvent, ColliderColliderEvent>` .
2019-10-15 16:26:14 -04:00
---
2019-10-15 16:24:44 -04:00
## `SetColorVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `Color` . Inherits from `SetVariableValue<Color, ColorVariable, ColorConstant, ColorReference, ColorEvent, ColorColorEvent>` .
2019-10-15 16:24:44 -04:00
---
2019-10-15 16:29:05 -04:00
## `SetFloatVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `float` . Inherits from `SetVariableValue<float, FloatVariable, FloatConstant, FloatReference, FloatEvent, FloatFloatEvent>` .
2019-10-15 16:29:05 -04:00
---
2019-10-15 16:30:18 -04:00
## `SetGameObjectVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `GameObject` . Inherits from `SetVariableValue<GameObject, GameObjectVariable, GameObjectConstant, GameObjectReference, GameObjectEvent, GameObjectGameObjectEvent>` .
2019-10-15 16:30:18 -04:00
---
2019-10-15 16:32:06 -04:00
## `SetIntVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `int` . Inherits from `SetVariableValue<int, IntVariable, IntConstant, IntReference, IntEvent, IntIntEvent>` .
2019-10-15 16:32:06 -04:00
---
2019-10-15 16:33:06 -04:00
## `SetStringVariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `string` . Inherits from `SetVariableValue<string, StringVariable, StringConstant, StringReference, StringEvent, StringStringEvent>` .
2019-10-15 16:33:06 -04:00
---
2019-10-16 12:02:08 -04:00
## `SetVariableValue<T,V,C,R,E1,E2>`
2019-10-15 14:44:25 -04:00
#### Type Parameters
- `T` - The type of the Variable to set.
- `V` - A Variable class of type `type` to set.
2019-10-16 12:02:08 -04:00
- `C` - A Constant class of type `type` to set.
2019-10-15 14:44:25 -04:00
- `R` - A Reference of type `type` .
- `E1` - An Event of type `type` .
- `E2` - An Event x 2 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.
2019-10-15 13:19:44 -04:00
---
2019-10-15 16:34:08 -04:00
## `SetVector2VariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `Vector2` . Inherits from `SetVariableValue<Vector2, Vector2Variable, Vector2Constant, Vector2Reference, Vector2Event, Vector2Vector2Event>` .
2019-10-15 16:34:08 -04:00
---
2019-10-15 16:34:48 -04:00
## `SetVector3VariableValue`
2019-10-16 12:02:08 -04:00
Set variable value Action of type `Vector3` . Inherits from `SetVariableValue<Vector3, Vector3Variable, Vector3Constant, Vector3Reference, Vector3Event, Vector3Vector3Event>` .
2019-10-15 16:34:48 -04:00
---
2019-10-14 20:08:41 -04:00
## `EditorIcon`
Specify a texture name from your assets which you want to be assigned as an icon to the MonoScript.
---
2019-10-15 13:19:44 -04:00
2019-10-14 20:08:41 -04:00
## `BaseAtom`
2019-10-16 13:43:05 -04:00
None generic base class for all Atoms.
2019-10-15 14:44:25 -04:00
### Variables
#### `_developerDescription`
2019-10-16 13:43:05 -04:00
A description of the Atom made for documentation purposes.
2019-10-15 14:44:25 -04:00
---
2019-10-15 16:23:46 -04:00
## `BoolConstant`
Constant of type `bool` . Inherits from `AtomBaseVariable<bool>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DConstant`
Constant of type `Collider2D` . Inherits from `AtomBaseVariable<Collider2D>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderConstant`
Constant of type `Collider` . Inherits from `AtomBaseVariable<Collider>` .
---
2019-10-15 16:24:44 -04:00
## `ColorConstant`
Constant of type `Color` . Inherits from `AtomBaseVariable<Color>` .
---
2019-10-15 16:29:05 -04:00
## `FloatConstant`
Constant of type `float` . Inherits from `AtomBaseVariable<float>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectConstant`
Constant of type `GameObject` . Inherits from `AtomBaseVariable<GameObject>` .
---
2019-10-15 16:32:06 -04:00
## `IntConstant`
Constant of type `int` . Inherits from `AtomBaseVariable<int>` .
---
2019-10-15 16:33:06 -04:00
## `StringConstant`
Constant of type `string` . Inherits from `AtomBaseVariable<string>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2Constant`
Constant of type `Vector2` . Inherits from `AtomBaseVariable<Vector2>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3Constant`
Constant of type `Vector3` . Inherits from `AtomBaseVariable<Vector3>` .
---
2019-10-15 14:44:25 -04:00
## `AtomEvent`
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.
---
## `AtomEvent<T>`
#### Type Parameters
- `T` - The type for this Event.
Generic base class for Events. Inherits from `AtomEvent` .
### Methods
#### `Raise(item)`
Raise the Event.
##### Parameters
- `item` - The value associated with the Event.
---
#### `Register(del)`
Register handler to be called when the Event triggers.
##### Parameters
- `del` - The handler.
---
#### `Unregister(del)`
Unregister handler that was registered using the `Register` method.
##### Parameters
- `del` - The handler.
---
#### `RegisterListener(listener)`
Register a Listener that in turn trigger all its associated handlers when the Event triggers.
##### Parameters
- `listener` - The Listenr to register.
---
#### `UnregisterListener(listener)`
Unregister a listener that was registered using the `RegisterListener` method.
##### Parameters
- `listener` - The Listenr 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 `AtomEvent` .
### 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(del)`
Register handler to be called when the Event triggers.
##### Parameters
- `del` - The handler.
---
#### `Unregister(del)`
Unregister handler that was registered using the `Register` method.
##### Parameters
- `del` - The handler.
---
#### `RegisterListener(listener)`
Register a Listener that in turn trigger all its associated handlers when the Event triggers.
##### Parameters
- `listener` - The Listenr to register.
---
#### `UnregisterListener(listener)`
Unregister a listener that was registered using the `RegisterListener` method.
##### Parameters
- `listener` - The Listenr 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>` .
---
2019-10-15 16:23:46 -04:00
## `BoolBoolEvent`
Event x 2 of type `bool` . Inherits from `AtomEvent<bool, bool>` .
---
## `BoolEvent`
Event of type `bool` . Inherits from `AtomEvent<bool>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DCollider2DEvent`
Event x 2 of type `Collider2D` . Inherits from `AtomEvent<Collider2D, Collider2D>` .
---
## `Collider2DEvent`
Event of type `Collider2D` . Inherits from `AtomEvent<Collider2D>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderColliderEvent`
Event x 2 of type `Collider` . Inherits from `AtomEvent<Collider, Collider>` .
---
## `ColliderEvent`
Event of type `Collider` . Inherits from `AtomEvent<Collider>` .
---
2019-10-15 16:24:44 -04:00
## `ColorColorEvent`
Event x 2 of type `Color` . Inherits from `AtomEvent<Color, Color>` .
---
## `ColorEvent`
Event of type `Color` . Inherits from `AtomEvent<Color>` .
---
2019-10-15 16:29:05 -04:00
## `FloatEvent`
Event of type `float` . Inherits from `AtomEvent<float>` .
---
## `FloatFloatEvent`
Event x 2 of type `float` . Inherits from `AtomEvent<float, float>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectEvent`
Event of type `GameObject` . Inherits from `AtomEvent<GameObject>` .
---
## `GameObjectGameObjectEvent`
Event x 2 of type `GameObject` . Inherits from `AtomEvent<GameObject, GameObject>` .
---
2019-10-15 16:32:06 -04:00
## `IntEvent`
Event of type `int` . Inherits from `AtomEvent<int>` .
---
## `IntIntEvent`
Event x 2 of type `int` . Inherits from `AtomEvent<int, int>` .
---
2019-10-15 16:33:06 -04:00
## `StringEvent`
Event of type `string` . Inherits from `AtomEvent<string>` .
---
## `StringStringEvent`
Event x 2 of type `string` . Inherits from `AtomEvent<string, string>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2Event`
Event of type `Vector2` . Inherits from `AtomEvent<Vector2>` .
---
## `Vector2Vector2Event`
Event x 2 of type `Vector2` . Inherits from `AtomEvent<Vector2, Vector2>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3Event`
Event of type `Vector3` . Inherits from `AtomEvent<Vector3>` .
---
## `Vector3Vector3Event`
Event x 2 of type `Vector3` . Inherits from `AtomEvent<Vector3, Vector3>` .
---
2019-10-15 16:37:15 -04:00
## `VoidEvent`
Event of type `Void` . Inherits from `AtomEvent<Void>` .
---
2019-10-15 14:44:25 -04:00
## `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>` .
---
2019-10-15 15:21:23 -04:00
## `AtomListener<T,A,E,UER>`
2019-10-15 14:44:25 -04:00
#### Type Parameters
2019-10-15 15:21:23 -04:00
- `T` - The type that we are listening for.
- `A` - Acion of type `AtomAction<T>` .
- `E` - Event of type `AtomEvent<T>` .
- `UER` - Unity Event of type `UnityEvent<T>` .
2019-10-15 14:44:25 -04:00
2019-10-16 13:43:05 -04:00
Generic base class for Listeners. Inherits from `BaseAtomListener` and `IAtomListener<T>` .
2019-10-14 20:08:41 -04:00
2019-10-15 15:21:23 -04:00
### Variables
#### `_event`
The Event that we are listening to.
---
#### `_unityEventResponse`
2019-10-16 12:14:25 -04:00
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).
2019-10-15 15:21:23 -04:00
---
#### `_actionResponses`
The Action responses;
### Properties
#### `Event`
The Event we are listening for as a proeprty.
### Methods
#### `OnEventRaised(item)`
Handler for when the Event gets raised.
##### Parameters
- `item` - The Event type.
---
## `AtomListener<T1,T2,A,E,UER>`
#### Type Parameters
- `T1` - The first type that we are listening for.
- `T2` - The second type that we are listening for.
- `A` - Acion of type `AtomAction<T1, T2>` .
- `E` - Event of type `AtomEvent<T1, T2>` .
- `UER` - Unity Event of type `UnityEvent<T1, T2>` .
2019-10-16 13:43:05 -04:00
Generic base class for Listeners. Inherits from `BaseAtomListener` and `IAtomListener<T1, T2>`
2019-10-15 15:21:23 -04:00
### Variables
#### `_event`
The Event that we are listening to.
---
#### `_unityEventResponse`
2019-10-16 12:14:25 -04:00
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).
2019-10-15 15:21:23 -04:00
---
#### `_actionResponses`
The Action responses;
### Properties
#### `Event`
The Event we are listening for as a proeprty.
### Methods
#### `OnEventRaised(first,second)`
Handler for when the Event gets raised.
##### Parameters
- `first` - The first Event type.
- `second` - The second Event type.
2019-10-14 20:08:41 -04:00
---
2019-10-15 13:19:44 -04:00
2019-10-16 13:43:05 -04:00
## `BaseAtomListener`
None generic base class for all Listeners.
### Variables
#### `_developerDescription`
A description of the Listener made for documentation purposes.
---
2019-10-15 16:23:46 -04:00
## `BoolBoolListener`
Listener x 2 of type `bool` . Inherits from `AtomListener<bool, bool, BoolBoolAction, BoolBoolEvent, BoolBoolUnityEvent>` .
---
## `BoolListener`
Listener of type `bool` . Inherits from `AtomListener<bool, BoolAction, BoolEvent, BoolUnityEvent>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DCollider2DListener`
Listener x 2 of type `Collider2D` . Inherits from `AtomListener<Collider2D, Collider2D, Collider2DCollider2DAction, Collider2DCollider2DEvent, Collider2DCollider2DUnityEvent>` .
---
## `Collider2DListener`
Listener of type `Collider2D` . Inherits from `AtomListener<Collider2D, Collider2DAction, Collider2DEvent, Collider2DUnityEvent>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderColliderListener`
Listener x 2 of type `Collider` . Inherits from `AtomListener<Collider, Collider, ColliderColliderAction, ColliderColliderEvent, ColliderColliderUnityEvent>` .
---
## `ColliderListener`
Listener of type `Collider` . Inherits from `AtomListener<Collider, ColliderAction, ColliderEvent, ColliderUnityEvent>` .
---
2019-10-15 16:24:44 -04:00
## `ColorColorListener`
Listener x 2 of type `Color` . Inherits from `AtomListener<Color, Color, ColorColorAction, ColorColorEvent, ColorColorUnityEvent>` .
---
## `ColorListener`
Listener of type `Color` . Inherits from `AtomListener<Color, ColorAction, ColorEvent, ColorUnityEvent>` .
---
2019-10-15 16:29:05 -04:00
## `FloatFloatListener`
Listener x 2 of type `float` . Inherits from `AtomListener<float, float, FloatFloatAction, FloatFloatEvent, FloatFloatUnityEvent>` .
---
## `FloatListener`
Listener of type `float` . Inherits from `AtomListener<float, FloatAction, FloatEvent, FloatUnityEvent>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectGameObjectListener`
Listener x 2 of type `GameObject` . Inherits from `AtomListener<GameObject, GameObject, GameObjectGameObjectAction, GameObjectGameObjectEvent, GameObjectGameObjectUnityEvent>` .
---
## `GameObjectListener`
Listener of type `GameObject` . Inherits from `AtomListener<GameObject, GameObjectAction, GameObjectEvent, GameObjectUnityEvent>` .
---
2019-10-15 16:32:06 -04:00
## `IntIntListener`
Listener x 2 of type `int` . Inherits from `AtomListener<int, int, IntIntAction, IntIntEvent, IntIntUnityEvent>` .
---
## `IntListener`
Listener of type `int` . Inherits from `AtomListener<int, IntAction, IntEvent, IntUnityEvent>` .
---
2019-10-15 16:33:06 -04:00
## `StringListener`
Listener of type `string` . Inherits from `AtomListener<string, StringAction, StringEvent, StringUnityEvent>` .
---
## `StringStringListener`
Listener x 2 of type `string` . Inherits from `AtomListener<string, string, StringStringAction, StringStringEvent, StringStringUnityEvent>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2Listener`
Listener of type `Vector2` . Inherits from `AtomListener<Vector2, Vector2Action, Vector2Event, Vector2UnityEvent>` .
---
## `Vector2Vector2Listener`
Listener x 2 of type `Vector2` . Inherits from `AtomListener<Vector2, Vector2, Vector2Vector2Action, Vector2Vector2Event, Vector2Vector2UnityEvent>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3Listener`
Listener of type `Vector3` . Inherits from `AtomListener<Vector3, Vector3Action, Vector3Event, Vector3UnityEvent>` .
---
## `Vector3Vector3Listener`
Listener x 2 of type `Vector3` . Inherits from `AtomListener<Vector3, Vector3, Vector3Vector3Action, Vector3Vector3Event, Vector3Vector3UnityEvent>` .
---
2019-10-15 16:37:15 -04:00
## `VoidListener`
Listener of type `Void` . Inherits from `AtomListener<Void, VoidAction, VoidEvent, VoidUnityEvent>` .
---
2019-10-15 15:39:32 -04:00
## `AtomList<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 tje list.
##### Parameters
- `item` - The item to add.
---
#### `Remove(item)`
Remove and item from the list.
##### Parameters
- `item` - The item to remove.
##### Returns
The removed item.
---
#### `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.
---
#### `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 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>` .
---
## `BaseAtomList`
None generic base class of Lists.Inherits from `BaseAtom` .
### Variables
#### `Cleared`
Event for when the list is cleared.
### Methods
#### `Clear`
Clear the list.
---
2019-10-15 16:23:46 -04:00
## `BoolList`
List of type `bool` . Inherits from `AtomList<bool, BoolEvent>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DList`
List of type `Collider2D` . Inherits from `AtomList<Collider2D, Collider2DEvent>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderList`
List of type `Collider` . Inherits from `AtomList<Collider, ColliderEvent>` .
---
2019-10-15 16:24:44 -04:00
## `ColorList`
List of type `Color` . Inherits from `AtomList<Color, ColorEvent>` .
---
2019-10-15 16:29:05 -04:00
## `FloatList`
List of type `float` . Inherits from `AtomList<float, FloatEvent>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectList`
List of type `GameObject` . Inherits from `AtomList<GameObject, GameObjectEvent>` .
---
2019-10-15 16:32:06 -04:00
## `IntList`
List of type `int` . Inherits from `AtomList<int, IntEvent>` .
---
2019-10-15 16:33:06 -04:00
## `StringList`
List of type `string` . Inherits from `AtomList<string, StringEvent>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2List`
List of type `Vector2` . Inherits from `AtomList<Vector2, Vector2Event>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3List`
List of type `Vector3` . Inherits from `AtomList<Vector3, Vector3Event>` .
---
2019-10-15 16:02:44 -04:00
## `AtomReference`
None generic base class for `AtomReference<T, V>` .
2019-10-16 12:02:08 -04:00
### Variables
#### `_usage`
Should we use the provided value (via inspector), the Constant value or the Variable value?
---
## `AtomReference.Usage`
Enum for how to use the Reference.
2019-10-15 16:02:44 -04:00
---
2019-10-15 16:23:46 -04:00
## `BoolReference`
2019-10-16 12:02:08 -04:00
Reference of type `bool` . Inherits from `AtomReference<bool, BoolVariable, BoolConstant>` .
2019-10-15 16:23:46 -04:00
---
2019-10-15 16:27:22 -04:00
## `Collider2DReference`
2019-10-16 12:02:08 -04:00
Reference of type `Collider2D` . Inherits from `AtomReference<Collider2D, Collider2DVariable, Collider2DConstant>` .
2019-10-15 16:27:22 -04:00
---
2019-10-15 16:26:14 -04:00
## `ColliderReference`
2019-10-16 12:02:08 -04:00
Reference of type `Collider` . Inherits from `AtomReference<Collider, ColliderVariable, ColliderConstant>` .
2019-10-15 16:26:14 -04:00
---
2019-10-15 16:24:44 -04:00
## `ColorReference`
2019-10-16 12:02:08 -04:00
Reference of type `Color` . Inherits from `AtomReference<Color, ColorVariable, ColorConstant>` .
2019-10-15 16:24:44 -04:00
---
2019-10-15 16:29:05 -04:00
## `FloatReference`
2019-10-16 12:02:08 -04:00
Reference of type `float` . Inherits from `AtomReference<float, FloatVariable, FloatConstant>` .
2019-10-15 16:29:05 -04:00
---
2019-10-15 16:30:18 -04:00
## `GameObjectReference`
2019-10-16 12:02:08 -04:00
Reference of type `GameObject` . Inherits from `AtomReference<GameObject, GameObjectVariable, GameObjectConstant>` .
2019-10-15 16:30:18 -04:00
---
2019-10-15 16:32:06 -04:00
## `IntReference`
2019-10-16 12:02:08 -04:00
Reference of type `int` . Inherits from `AtomReference<int, IntVariable, IntConstant>` .
2019-10-15 16:32:06 -04:00
---
2019-10-15 16:33:06 -04:00
## `StringReference`
2019-10-16 12:02:08 -04:00
Reference of type `string` . Inherits from `AtomReference<string, StringVariable, StringConstant>` .
2019-10-15 16:33:06 -04:00
---
2019-10-15 16:34:08 -04:00
## `Vector2Reference`
2019-10-16 12:02:08 -04:00
Reference of type `Vector2` . Inherits from `AtomReference<Vector2, Vector2Variable, Vector2Constant>` .
2019-10-15 16:34:08 -04:00
---
2019-10-15 16:34:48 -04:00
## `Vector3Reference`
2019-10-16 12:02:08 -04:00
Reference of type `Vector3` . Inherits from `AtomReference<Vector3, Vector3Variable, Vector3Constant>` .
2019-10-15 16:34:48 -04:00
---
2019-10-15 16:02:44 -04:00
## `Void`
Dummy module class used for representing nothing in for example empty Events, eg: `AtomEvent<Void>`
---
2019-10-15 16:23:46 -04:00
## `BoolBoolUnityEvent`
None generic Unity Event x 2 of type `bool` . Inherits from `UnityEvent<bool, bool>` .
---
## `BoolUnityEvent`
None generic Unity Event of type `bool` . Inherits from `UnityEvent<bool>` .
---
2019-10-15 16:27:22 -04:00
## `Collider2DCollider2DUnityEvent`
None generic Unity Event x 2 of type `Collider2D` . Inherits from `UnityEvent<Collider2D, Collider2D>` .
---
## `Collider2DUnityEvent`
None generic Unity Event of type `Collider2D` . Inherits from `UnityEvent<Collider2D>` .
---
2019-10-15 16:26:14 -04:00
## `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>` .
---
2019-10-15 16:24:44 -04:00
## `ColorColorUnityEvent`
None generic Unity Event x 2 of type `Color` . Inherits from `UnityEvent<Color, Color>` .
---
## `ColorUnityEvent`
None generic Unity Event of type `Color` . Inherits from `UnityEvent<Color>` .
---
2019-10-15 16:29:05 -04:00
## `FloatFloatUnityEvent`
None generic Unity Event x 2 of type `float` . Inherits from `UnityEvent<float, float>` .
---
## `FloatUnityEvent`
None generic Unity Event of type `float` . Inherits from `UnityEvent<float>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectGameObjectUnityEvent`
None generic Unity Event x 2 of type `GameObject` . Inherits from `UnityEvent<GameObject, GameObject>` .
---
## `GameObjectUnityEvent`
None generic Unity Event of type `GameObject` . Inherits from `UnityEvent<GameObject>` .
---
2019-10-15 16:32:06 -04:00
## `IntIntUnityEvent`
None generic Unity Event x 2 of type `int` . Inherits from `UnityEvent<int, int>` .
---
## `IntUnityEvent`
None generic Unity Event of type `int` . Inherits from `UnityEvent<int>` .
---
2019-10-15 16:33:06 -04:00
## `StringStringUnityEvent`
None generic Unity Event x 2 of type `string` . Inherits from `UnityEvent<string, string>` .
---
## `StringUnityEvent`
None generic Unity Event of type `string` . Inherits from `UnityEvent<string>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2UnityEvent`
None generic Unity Event of type `Vector2` . Inherits from `UnityEvent<Vector2>` .
---
## `Vector2Vector2UnityEvent`
None generic Unity Event x 2 of type `Vector2` . Inherits from `UnityEvent<Vector2, Vector2>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3UnityEvent`
None generic Unity Event of type `Vector3` . Inherits from `UnityEvent<Vector3>` .
---
## `Vector3Vector3UnityEvent`
None generic Unity Event x 2 of type `Vector3` . Inherits from `UnityEvent<Vector3, Vector3>` .
---
2019-10-15 16:37:15 -04:00
## `VoidUnityEvent`
None generic Unity Event of type `Void` . Inherits from `UnityEvent<Void>` .
---
2019-10-15 16:02:44 -04:00
## `DynamicAtoms`
Static helper class for when creating Atoms a runtime (yes it is indeed possible 🤯).
### Methods
#### `CreateVariable<T,V,E1,E2>(initialValue,changed,changedWithHistory)`
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>` .
##### Parameters
- `initialValue` - Inital value of the Variable created.
- `changed` - Changed Event of type `E1` .
- `changedWithHistory` - Changed with history Event of type `E2` .
##### 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.
---
2019-10-14 20:08:41 -04:00
## `Runtime`
Internal constant and static readonly members for runtime usage.
2019-10-15 16:02:44 -04:00
### Properties
#### `IsUnityAtomsRepo`
Determine if we are working the Unity Atoms source library / repo or not.
2019-10-14 20:08:41 -04:00
---
2019-10-15 13:19:44 -04:00
2019-10-14 20:08:41 -04:00
## `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.
---
2019-10-15 16:21:56 -04:00
## `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(System.Object)`
Determines equality between Variables.
##### Parameters
- `obj` - The other Variable to compare as an `object` .
##### Returns
`true` if they are equal, otherwise `false` .
---
#### `GetHashCode`
Get an unique hash code for this Variable based on the Variable's value.
2019-10-15 17:31:21 -04:00
##### Returns
An unique hash.
2019-10-15 16:21:56 -04:00
---
#### `op_Equality(left,right)`
Equal operator.
##### Parameters
- `left` - The first Variable to compare.
- `right` - The second Variable to compare.
##### Returns
`true` if eqaul, otherwise `false` .
---
#### `op_Inequality(left,right)`
None equality operator.
##### Parameters
- `left` - The first Variable to compare.
- `right` - The second Variable to compare.
##### Returns
`true` if not eqaul, otherwise `false` .
---
#### `Reset(System.Boolean)`
Not implemented.abstract Throws Exception
---
## `AtomVariable<T,E1,E2>`
#### Type Parameters
- `T` - The Variable value type.
- `E1` - Event of type `AtomEvent<T>` .
- `E2` - Event of type `AtomEvent<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.
---
2019-10-20 17:21:16 -04:00
#### `InitialValue`
The inital Variable value as a property.
---
2019-10-15 16:21:56 -04:00
#### `OldValue`
The value the Variable had before its value got changed last time.
### 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>` .
---
2019-10-15 16:23:46 -04:00
## `BoolVariable`
Variable of type `bool` . Inherits from `EquatableAtomVariable<bool, BoolEvent, BoolBoolEvent>` .
---
2019-10-15 16:24:44 -04:00
2019-10-15 16:27:22 -04:00
## `Collider2DVariable`
Variable of type `Collider2D` . Inherits from `AtomVariable<Collider2D, Collider2DEvent, Collider2DCollider2DEvent>` .
---
2019-10-15 16:26:14 -04:00
## `ColliderVariable`
Variable of type `Collider` . Inherits from `AtomVariable<Collider, ColliderEvent, ColliderColliderEvent>` .
---
2019-10-15 16:24:44 -04:00
## `ColorVariable`
Variable of type `Color` . Inherits from `EquatableAtomVariable<Color, ColorEvent, ColorColorEvent>` .
---
2019-10-15 16:29:05 -04:00
## `FloatVariable`
Variable of type `float` . Inherits from `EquatableAtomVariable<float, FloatEvent, FloatFloatEvent>` .
---
2019-10-15 16:30:18 -04:00
## `GameObjectVariable`
Variable of type `GameObject` . Inherits from `AtomVariable<GameObject, GameObjectEvent, GameObjectGameObjectEvent>` .
---
2019-10-15 16:32:06 -04:00
## `IntVariable`
Variable of type `int` . Inherits from `EquatableAtomVariable<int, IntEvent, IntIntEvent>` .
---
2019-10-15 16:33:06 -04:00
## `StringVariable`
Variable of type `string` . Inherits from `EquatableAtomVariable<string, StringEvent, StringStringEvent>` .
---
2019-10-15 16:34:08 -04:00
## `Vector2Variable`
Variable of type `Vector2` . Inherits from `EquatableAtomVariable<Vector2, Vector2Event, Vector2Vector2Event>` .
---
2019-10-15 16:34:48 -04:00
## `Vector3Variable`
Variable of type `Vector3` . Inherits from `EquatableAtomVariable<Vector3, Vector3Event, Vector3Vector3Event>` .
---
2019-10-15 19:43:51 -04:00
## `VoidGameObjectUnityEvent`
None generic Unity Event x 2 of type `Void` and `GameObject` . Inherits from `UnityEvent<Void, GameObject>` .
---