7 namespace SiliconStudio.
Paradox.Effects
20 AutoCheckDependencies = autoCheckDependencies;
23 public bool AutoCheckDependencies {
get; set; }
25 public int SizeInBytes {
get; set; }
31 internal abstract Delegate SourceDelegate {
get; }
33 internal abstract void GetValue(ParameterCollection.InternalValue result);
40 public delegate
void ParameterUpdateDelegate5<TCast1, TCast2, TCast3, TCast4, TCast5, T>(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref TCast4 param4, ref TCast5 param5, ref T output);
41 public delegate
void ParameterUpdateDelegate6<TCast1, TCast2, TCast3, TCast4, TCast5, TCast6, T>(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref TCast4 param4, ref TCast5 param5, ref TCast6 param6, ref T output);
53 return new ParameterDynamicValue1<T, T1, T, T1>(param1, update, autoCheckDependencies);
61 return new ParameterDynamicValue2<T, T1, T2, T, T1, T2>(param1, param2, update, autoCheckDependencies);
63 public static ParameterDynamicValue<T> New<T, T1, T2, T3>(
ParameterKey<T1> param1,
ParameterKey<T2> param2,
ParameterKey<T3> param3, ParameterUpdateDelegate3<T1, T2, T3, T> update,
bool autoCheckDependencies =
true)
70 return new ParameterDynamicValue3<T, T1, T2, T3, T, T1, T2, T3>(param1, param2, param3, update, autoCheckDependencies);
72 public static ParameterDynamicValue<T> New<T, T1, T2, T3, T4>(
ParameterKey<T1> param1,
ParameterKey<T2> param2,
ParameterKey<T3> param3,
ParameterKey<T4> param4, ParameterUpdateDelegate4<T1, T2, T3, T4, T> update,
bool autoCheckDependencies =
true)
80 return new ParameterDynamicValue4<T, T1, T2, T3, T4, T, T1, T2, T3, T4>(param1, param2, param3, param4, update, autoCheckDependencies);
82 public static ParameterDynamicValue<T> New<T, T1, T2, T3, T4, T5>(
ParameterKey<T1> param1,
ParameterKey<T2> param2,
ParameterKey<T3> param3,
ParameterKey<T4> param4,
ParameterKey<T5> param5, ParameterUpdateDelegate5<T1, T2, T3, T4, T5, T> update,
bool autoCheckDependencies =
true)
91 return new ParameterDynamicValue5<T, T1, T2, T3, T4, T5, T, T1, T2, T3, T4, T5>(param1, param2, param3, param4, param5, update, autoCheckDependencies);
93 public static ParameterDynamicValue<T> New<T, T1, T2, T3, T4, T5, T6>(
ParameterKey<T1> param1,
ParameterKey<T2> param2,
ParameterKey<T3> param3,
ParameterKey<T4> param4,
ParameterKey<T5> param5,
ParameterKey<T6> param6, ParameterUpdateDelegate6<T1, T2, T3, T4, T5, T6, T> update,
bool autoCheckDependencies =
true)
103 return new ParameterDynamicValue6<T, T1, T2, T3, T4, T5, T6, T, T1, T2, T3, T4, T5, T6>(param1, param2, param3, param4, param5, param6, update, autoCheckDependencies);
218 public ParameterDynamicValue1(
ParameterKey<T1> param1, ParameterUpdateDelegate1<TCast1, TCast> update,
bool autoCheckDependencies)
220 AutoCheckDependencies = autoCheckDependencies;
229 public ParameterUpdateDelegate1<TCast1, TCast> Update {
get;
private set; }
231 internal override Delegate SourceDelegate {
get {
return Update; } }
238 internal override void GetValue(ParameterCollection.InternalValue result)
244 var parameters = result.Dependencies;
245 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
253 internal class ParameterDynamicValue2<
T, T1, T2, TCast, TCast1, TCast2> : ParameterDynamicValue<T>
267 public ParameterDynamicValue2(ParameterKey<T1> param1, ParameterKey<T2> param2, ParameterUpdateDelegate2<TCast1, TCast2, TCast> update,
bool autoCheckDependencies)
269 AutoCheckDependencies = autoCheckDependencies;
270 Dependencies =
new ParameterKey[] { param1, param2, };
278 public ParameterUpdateDelegate2<TCast1, TCast2, TCast> Update {
get;
private set; }
280 internal override Delegate SourceDelegate {
get {
return Update; } }
287 internal override void GetValue(ParameterCollection.InternalValue result)
295 var parameters = result.Dependencies;
296 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast2>)parameters[1].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
304 internal class ParameterDynamicValue3<
T, T1, T2, T3, TCast, TCast1, TCast2, TCast3> : ParameterDynamicValue<T>
320 public ParameterDynamicValue3(ParameterKey<T1> param1, ParameterKey<T2> param2, ParameterKey<T3> param3, ParameterUpdateDelegate3<TCast1, TCast2, TCast3, TCast> update,
bool autoCheckDependencies)
322 AutoCheckDependencies = autoCheckDependencies;
323 Dependencies =
new ParameterKey[] { param1, param2, param3, };
331 public ParameterUpdateDelegate3<TCast1, TCast2, TCast3, TCast> Update {
get;
private set; }
333 internal override Delegate SourceDelegate {
get {
return Update; } }
340 internal override void GetValue(ParameterCollection.InternalValue result)
350 var parameters = result.Dependencies;
351 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast2>)parameters[1].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast3>)parameters[2].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
359 internal class ParameterDynamicValue4<
T, T1, T2, T3, T4, TCast, TCast1, TCast2, TCast3, TCast4> : ParameterDynamicValue<T>
377 public ParameterDynamicValue4(ParameterKey<T1> param1, ParameterKey<T2> param2, ParameterKey<T3> param3, ParameterKey<T4> param4, ParameterUpdateDelegate4<TCast1, TCast2, TCast3, TCast4, TCast> update,
bool autoCheckDependencies)
379 AutoCheckDependencies = autoCheckDependencies;
380 Dependencies =
new ParameterKey[] { param1, param2, param3, param4, };
388 public ParameterUpdateDelegate4<TCast1, TCast2, TCast3, TCast4, TCast> Update {
get;
private set; }
390 internal override Delegate SourceDelegate {
get {
return Update; } }
397 internal override void GetValue(ParameterCollection.InternalValue result)
409 var parameters = result.Dependencies;
410 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast2>)parameters[1].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast3>)parameters[2].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast4>)parameters[3].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
418 internal class ParameterDynamicValue5<
T, T1, T2, T3, T4, T5, TCast, TCast1, TCast2, TCast3, TCast4, TCast5> : ParameterDynamicValue<T>
438 public ParameterDynamicValue5(ParameterKey<T1> param1, ParameterKey<T2> param2, ParameterKey<T3> param3, ParameterKey<T4> param4, ParameterKey<T5> param5, ParameterUpdateDelegate5<TCast1, TCast2, TCast3, TCast4, TCast5, TCast> update,
bool autoCheckDependencies)
440 AutoCheckDependencies = autoCheckDependencies;
441 Dependencies =
new ParameterKey[] { param1, param2, param3, param4, param5, };
449 public ParameterUpdateDelegate5<TCast1, TCast2, TCast3, TCast4, TCast5, TCast> Update {
get;
private set; }
451 internal override Delegate SourceDelegate {
get {
return Update; } }
458 internal override void GetValue(ParameterCollection.InternalValue result)
472 var parameters = result.Dependencies;
473 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast2>)parameters[1].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast3>)parameters[2].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast4>)parameters[3].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast5>)parameters[4].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
481 internal class ParameterDynamicValue6<
T, T1, T2, T3, T4, T5, T6, TCast, TCast1, TCast2, TCast3, TCast4, TCast5, TCast6> : ParameterDynamicValue<T>
503 public ParameterDynamicValue6(ParameterKey<T1> param1, ParameterKey<T2> param2, ParameterKey<T3> param3, ParameterKey<T4> param4, ParameterKey<T5> param5, ParameterKey<T6> param6, ParameterUpdateDelegate6<TCast1, TCast2, TCast3, TCast4, TCast5, TCast6, TCast> update,
bool autoCheckDependencies)
505 AutoCheckDependencies = autoCheckDependencies;
506 Dependencies =
new ParameterKey[] { param1, param2, param3, param4, param5, param6, };
514 public ParameterUpdateDelegate6<TCast1, TCast2, TCast3, TCast4, TCast5, TCast6, TCast> Update {
get;
private set; }
516 internal override Delegate SourceDelegate {
get {
return Update; } }
523 internal override void GetValue(ParameterCollection.InternalValue result)
539 var parameters = result.Dependencies;
540 Update(ref ((ParameterCollection.InternalValueBase<TCast1>)parameters[0].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast2>)parameters[1].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast3>)parameters[2].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast4>)parameters[3].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast5>)parameters[4].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast6>)parameters[5].Entry).Value, ref ((ParameterCollection.InternalValueBase<TCast>)result).Value);
Base class for ParameterDynamicValue.
Key of an effect parameter.
delegate void ParameterUpdateDelegate1< TCast1, T >(ref TCast1 param1, ref T output)
delegate void ParameterUpdateDelegate2< TCast1, TCast2, T >(ref TCast1 param1, ref TCast2 param2, ref T output)
ParameterDynamicValue Clone()
Base class for ParameterDynamicValue{T}.
delegate void ParameterUpdateDelegate6< TCast1, TCast2, TCast3, TCast4, TCast5, TCast6, T >(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref TCast4 param4, ref TCast5 param5, ref TCast6 param6, ref T output)
delegate void ParameterUpdateDelegate5< TCast1, TCast2, TCast3, TCast4, TCast5, T >(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref TCast4 param4, ref TCast5 param5, ref T output)
delegate void ParameterUpdateDelegate4< TCast1, TCast2, TCast3, TCast4, T >(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref TCast4 param4, ref T output)
delegate void ParameterUpdateDelegate3< TCast1, TCast2, TCast3, T >(ref TCast1 param1, ref TCast2 param2, ref TCast3 param3, ref T output)
ParameterDynamicBase(bool autoCheckDependencies)
Describes a dynamic value with no input.