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 |