using System; using System.Runtime.InteropServices; namespace System.Runtime.Serialization { /// Implements a serialization surrogate selector that allows one object to perform serialization and deserialization of another. // Token: 0x0200047F RID: 1151 [ComVisible(true)] public interface ISerializationSurrogate { /// Populates the provided with the data needed to serialize the object. /// The object to serialize. /// The to populate with data. /// The destination (see ) for this serialization. /// The caller does not have the required permission. // Token: 0x06002BFC RID: 11260 void GetObjectData(object obj, SerializationInfo info, StreamingContext context); /// Populates the object using the information in the . /// The populated deserialized object. /// The object to populate. /// The information to populate the object. /// The source from which the object is deserialized. /// The surrogate selector where the search for a compatible surrogate begins. /// The caller does not have the required permission. // Token: 0x06002BFD RID: 11261 object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); } }