Class ParameterCollection
Manage several effect parameters (resources and data). A specific data and resource layout can be forced (usually by the consuming effect).
[DataSerializer(typeof(ParameterCollection.Serializer))]
[DataSerializerGlobal(null, typeof(List<ParameterKeyInfo>), DataSerializerGenericMode.None, false, false)]
public class ParameterCollection
- Inheritance
-
objectParameterCollection
- Derived
- Extension Methods
Constructors
ParameterCollection()
public ParameterCollection()
ParameterCollection(ParameterCollection)
public ParameterCollection(ParameterCollection parameterCollection)
Parameters
parameterCollectionParameterCollection
Fields
DataValues
public byte[] DataValues
Field Value
- byte[]
LayoutCounter
public int LayoutCounter
Field Value
ObjectValues
public object[] ObjectValues
Field Value
- object[]
PermutationCounter
public int PermutationCounter
Field Value
Properties
HasLayout
public bool HasLayout { get; }
Property Value
Layout
public ParameterCollectionLayout Layout { get; }
Property Value
ParameterKeyInfos
public List<ParameterKeyInfo> ParameterKeyInfos { get; }
Property Value
Methods
Clear()
Clears the collection, including the layout.
public void Clear()
ContainsKey(ParameterKey)
Determines whether current collection contains a value for this key.
public bool ContainsKey(ParameterKey key)
Parameters
keyParameterKey
Returns
CopyTo<T>(ValueParameterKey<T>, ParameterCollection, ValueParameterKey<T>)
Copies all blittable values of a given key to the specified ParameterCollection.
public void CopyTo<T>(ValueParameterKey<T> key, ParameterCollection destination, ValueParameterKey<T> destinationKey) where T : struct
Parameters
keyValueParameterKey<T>The key for the values to copy.
destinationParameterCollectionThe collection to copy the values to.
destinationKeyValueParameterKey<T>The key for the values of the destination collection.
Type Parameters
T
GetAccessor<T>(ObjectParameterKey<T>, bool)
Gets an accessor to get and set objects more quickly.
public ObjectParameterAccessor<T> GetAccessor<T>(ObjectParameterKey<T> parameterKey, bool createIfNew = true)
Parameters
parameterKeyObjectParameterKey<T>createIfNewbool
Returns
Type Parameters
T
GetAccessor<T>(PermutationParameterKey<T>, bool)
Gets an accessor to get and set permutations more quickly.
public PermutationParameter<T> GetAccessor<T>(PermutationParameterKey<T> parameterKey, bool createIfNew = true)
Parameters
parameterKeyPermutationParameterKey<T>createIfNewbool
Returns
Type Parameters
T
GetAccessor<T>(ValueParameterKey<T>, int)
Gets an accessor to get and set blittable values more quickly.
public ValueParameter<T> GetAccessor<T>(ValueParameterKey<T> parameterKey, int elementCount = 1) where T : struct
Parameters
parameterKeyValueParameterKey<T>elementCountint
Returns
Type Parameters
T
GetObject(ParameterKey)
public object GetObject(ParameterKey key)
Parameters
keyParameterKey
Returns
- object
GetObjectParameterHelper(ParameterKey, bool)
protected ParameterCollection.Accessor GetObjectParameterHelper(ParameterKey parameterKey, bool createIfNew = true)
Parameters
parameterKeyParameterKeycreateIfNewbool
Returns
GetValues<T>(ValueParameterKey<T>)
Gets blittable values.
public T[] GetValues<T>(ValueParameterKey<T> key) where T : struct
Parameters
keyValueParameterKey<T>
Returns
- T[]
Type Parameters
T
Get<T>(ObjectParameterAccessor<T>)
Gets an object.
public T Get<T>(ObjectParameterAccessor<T> parameterAccessor)
Parameters
parameterAccessorObjectParameterAccessor<T>
Returns
- T
Type Parameters
T
Get<T>(ObjectParameterKey<T>, bool)
Gets an object.
public T Get<T>(ObjectParameterKey<T> parameter, bool createIfNew = false)
Parameters
parameterObjectParameterKey<T>createIfNewbool
Returns
- T
Type Parameters
T
Get<T>(PermutationParameterKey<T>, bool)
Gets a permutation.
public T Get<T>(PermutationParameterKey<T> parameter, bool createIfNew = false)
Parameters
parameterPermutationParameterKey<T>createIfNewbool
Returns
- T
Type Parameters
T
Get<T>(PermutationParameter<T>)
Gets a permutation.
public T Get<T>(PermutationParameter<T> parameter)
Parameters
parameterPermutationParameter<T>
Returns
- T
Type Parameters
T
Get<T>(ValueParameterKey<T>)
Gets a blittable value.
public T Get<T>(ValueParameterKey<T> parameter) where T : struct
Parameters
parameterValueParameterKey<T>
Returns
- T
Type Parameters
T
Get<T>(ValueParameter<T>)
Gets a value.
public T Get<T>(ValueParameter<T> parameter) where T : struct
Parameters
parameterValueParameter<T>
Returns
- T
Type Parameters
T
Remove(ParameterKey)
public bool Remove(ParameterKey key)
Parameters
keyParameterKey
Returns
SetObject(ParameterKey, object)
public void SetObject(ParameterKey key, object value)
Parameters
keyParameterKeyvalueobject
Set<T>(ObjectParameterAccessor<T>, T)
Sets an object.
public void Set<T>(ObjectParameterAccessor<T> parameterAccessor, T value)
Parameters
parameterAccessorObjectParameterAccessor<T>valueT
Type Parameters
T
Set<T>(ObjectParameterKey<T>, T)
Sets an object.
public void Set<T>(ObjectParameterKey<T> parameter, T value)
Parameters
parameterObjectParameterKey<T>valueT
Type Parameters
T
Set<T>(PermutationParameterKey<T>, T)
Sets a permutation.
public void Set<T>(PermutationParameterKey<T> parameter, T value)
Parameters
parameterPermutationParameterKey<T>valueT
Type Parameters
T
Set<T>(PermutationParameter<T>, T)
Sets a permutation.
public void Set<T>(PermutationParameter<T> parameter, T value)
Parameters
parameterPermutationParameter<T>valueT
Type Parameters
T
Set<T>(ValueParameterKey<T>, int, ref T)
Sets blittable values.
public void Set<T>(ValueParameterKey<T> parameter, int count, ref T firstValue) where T : struct
Parameters
parameterValueParameterKey<T>countintfirstValueT
Type Parameters
T
Set<T>(ValueParameterKey<T>, T)
Sets a blittable value.
public void Set<T>(ValueParameterKey<T> parameter, T value) where T : struct
Parameters
parameterValueParameterKey<T>valueT
Type Parameters
T
Set<T>(ValueParameterKey<T>, ref T)
Sets a blittable value.
public void Set<T>(ValueParameterKey<T> parameter, ref T value) where T : struct
Parameters
parameterValueParameterKey<T>valueT
Type Parameters
T
Set<T>(ValueParameterKey<T>, T[])
Sets blittable values.
public void Set<T>(ValueParameterKey<T> parameter, T[] values) where T : struct
Parameters
parameterValueParameterKey<T>valuesT[]
Type Parameters
T
Set<T>(ValueParameter<T>, int, ref T)
Sets blittable values.
public void Set<T>(ValueParameter<T> parameter, int count, ref T firstValue) where T : struct
Parameters
parameterValueParameter<T>countintfirstValueT
Type Parameters
T
Set<T>(ValueParameter<T>, T)
Sets a blittable value.
public void Set<T>(ValueParameter<T> parameter, T value) where T : struct
Parameters
parameterValueParameter<T>valueT
Type Parameters
T
Set<T>(ValueParameter<T>, ref T)
Sets a blittable value.
public void Set<T>(ValueParameter<T> parameter, ref T value) where T : struct
Parameters
parameterValueParameter<T>valueT
Type Parameters
T
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.
UpdateLayout(ParameterCollectionLayout)
Reorganizes internal data and resources to match the given objects, and append extra values at the end.
public void UpdateLayout(ParameterCollectionLayout collectionLayout)
Parameters
collectionLayoutParameterCollectionLayout