Class SyncDictionary<TKey, TValue>
Inheritance
Implements
Inherited Members
Namespace: FishNet.Object.Synchronizing
Assembly: FishNet.Runtime.dll
Syntax
[Serializable]
public class SyncDictionary<TKey, TValue> : SyncBase, IDictionary<TKey, TValue>, ICollection<KeyValuePair<TKey, TValue>>, IReadOnlyDictionary<TKey, TValue>, IReadOnlyCollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, IEnumerable
Type Parameters
| Name | Description |
|---|---|
| TKey | |
| TValue |
Constructors
SyncDictionary(SyncTypeSettings)
Declaration
public SyncDictionary(SyncTypeSettings settings = default(SyncTypeSettings))
Parameters
| Type | Name | Description |
|---|---|---|
| SyncTypeSettings | settings |
SyncDictionary(Dictionary<TKey, TValue>, SyncTypeSettings)
Declaration
public SyncDictionary(Dictionary<TKey, TValue> objects, SyncTypeSettings settings = default(SyncTypeSettings))
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.Dictionary<TKey, TValue> | objects | |
| SyncTypeSettings | settings |
Fields
Collection
Collection of objects.
Declaration
public Dictionary<TKey, TValue> Collection
Field Value
| Type | Description |
|---|---|
| System.Collections.Generic.Dictionary<TKey, TValue> |
Properties
Count
Number of objects in the collection.
Declaration
public int Count { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Item[TKey]
Gets or sets value for a key.
Declaration
public TValue this[TKey key] { get; set; }
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to use. |
Property Value
| Type | Description |
|---|---|
| TValue | Value when using as Get. |
Keys
Keys within the collection.
Declaration
public ICollection<TKey> Keys { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.ICollection<TKey> |
Values
Values within the collection.
Declaration
public ICollection<TValue> Values { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.ICollection<TValue> |
Methods
Add(TKey, TValue)
Adds key and value.
Declaration
public void Add(TKey key, TValue value)
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to add. |
| TValue | value | Value for key. |
Add(KeyValuePair<TKey, TValue>)
Adds item.
Declaration
public void Add(KeyValuePair<TKey, TValue> item)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.KeyValuePair<TKey, TValue> | item | Item to add. |
Clear()
Clears all values.
Declaration
public void Clear()
Contains(KeyValuePair<TKey, TValue>)
Returns if item exist.
Declaration
public bool Contains(KeyValuePair<TKey, TValue> item)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.KeyValuePair<TKey, TValue> | item | Item to use. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if found. |
ContainsKey(TKey)
Returns if key exist.
Declaration
public bool ContainsKey(TKey key)
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to use. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if found. |
CopyTo(KeyValuePair<TKey, TValue>[], Int32)
Copies collection to an array.
Declaration
public void CopyTo(KeyValuePair<TKey, TValue>[] array, int offset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.KeyValuePair<TKey, TValue>[] | array | Array to copy to. |
| System.Int32 | offset | Offset of array data is copied to. |
Dirty(TKey)
Dirties an entry by key.
Declaration
public void Dirty(TKey key)
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to dirty. |
Dirty(TValue, EqualityComparer<TValue>)
Dirties an entry by value. This operation can be very expensive, will cause allocations, and may fail if your value cannot be compared.
Declaration
public bool Dirty(TValue value, EqualityComparer<TValue> comparer = null)
Parameters
| Type | Name | Description |
|---|---|---|
| TValue | value | Value to dirty. |
| System.Collections.Generic.EqualityComparer<TValue> | comparer |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if value was found and marked dirty. |
DirtyAll()
Dirties the entire collection forcing a full send.
Declaration
public void DirtyAll()
Finalize()
Declaration
protected void Finalize()
GetCollection(Boolean)
Gets the collection being used within this SyncList.
Declaration
public Dictionary<TKey, TValue> GetCollection(bool asServer)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | asServer | True if returning the server value, false if client value. The values will only differ when running as host. While asServer is true the most current values on server will be returned, and while false the latest values received by client will be returned. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.Dictionary<TKey, TValue> | The used collection. |
GetEnumerator()
Gets the IEnumerator for the collection.
Declaration
public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerator<System.Collections.Generic.KeyValuePair<TKey, TValue>> |
Initialized()
Called when the SyncType has been registered, but not yet initialized over the network.
Declaration
protected override void Initialized()
Overrides
OnStartCallback(Boolean)
Called after OnStartXXXX has occurred.
Declaration
protected override void OnStartCallback(bool asServer)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | asServer | True if OnStartServer was called, false if OnStartClient. |
Overrides
Remove(TKey)
Removes a key.
Declaration
public bool Remove(TKey key)
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to remove. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if removed. |
Remove(KeyValuePair<TKey, TValue>)
Removes an item.
Declaration
public bool Remove(KeyValuePair<TKey, TValue> item)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.KeyValuePair<TKey, TValue> | item | Item to remove. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if removed. |
TryGetValue(TKey, out TValue)
Tries to get value from key.
Declaration
public bool TryGetValue(TKey key, out TValue value)
Parameters
| Type | Name | Description |
|---|---|---|
| TKey | key | Key to use. |
| TValue | value | Variable to output to. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if able to output value. |
Events
OnChange
Called when the SyncDictionary changes.
Declaration
public event SyncDictionary<TKey, TValue>.SyncDictionaryChanged OnChange
Event Type
| Type | Description |
|---|---|
| FishNet.Object.Synchronizing.SyncDictionary.SyncDictionaryChanged<> |
Explicit Interface Implementations
IEnumerable.GetEnumerator()
Gets the IEnumerator for the collection.
Declaration
IEnumerator IEnumerable.GetEnumerator()
Returns
| Type | Description |
|---|---|
| System.Collections.IEnumerator |