public object Clone() { var result = new RuntimeEffect(); result.Effect = this.Effect; result.EffectData = (IEffectData)EffectData.Clone(); return(result); }
private IEffectData DeSerializeEffect(RuntimeEffect effect, string str) { if (effect == null) { return(null); } if (string.IsNullOrEmpty(str)) { return(null); } byte[] bytes = Convert.FromBase64String(str); using (var stream = new MemoryStream(bytes)) { return((IEffectData)serializer.Deserialize(stream)); } }
private string SerializeEffect(RuntimeEffect effect) { if (effect == null) { return(""); } if (effect.EffectData == null) { return(""); } using (var stream = new MemoryStream()) { serializer.Serialize(stream, effect.EffectData); stream.Flush(); return(Convert.ToBase64String(stream.ToArray())); } }
public void Apply(RuntimeEffect r) { Effects.Add((RuntimeEffect)r.Clone()); }