{
"api/IPA.OnStartAttribute.html": {
"href": "api/IPA.OnStartAttribute.html",
"title": "Class OnStartAttribute",
"keywords": "Class OnStartAttribute Indicates that the target method should be called when the game starts. Inheritance Object Attribute OnStartAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)] public sealed class OnStartAttribute : Attribute, _Attribute, IEdgeLifecycleAttribute Remarks This attribute is interchangable with OnEnableAttribute , and is treated identically. They are seperate to allow plugin code to more clearly describe the intent of the methods. Typically, this will be used when the RuntimeOptions parameter of the plugins's PluginAttribute is SingleStartInit . The method marked by this attribute will always be called from the Unity main thread. Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[]) See Also PluginAttribute OnEnableAttribute"
},
"api/IPA.Old.IPlugin.html": {
"href": "api/IPA.Old.IPlugin.html",
"title": "Interface IPlugin",
"keywords": "Interface IPlugin Interface for generic Illusion unity plugins. Every class that implements this will be loaded if the DLL is placed in Plugins. Namespace : IPA.Old Assembly : IPA.Loader.dll Syntax [Obsolete(\"When building plugins for Beat Saber, use IBeatSaberPlugin\")] public interface IPlugin Properties | Improve this Doc View Source Name Gets the name of the plugin. Declaration string Name { get; } Property Value Type Description String | Improve this Doc View Source Version Gets the version of the plugin. Declaration string Version { get; } Property Value Type Description String Methods | Improve this Doc View Source OnApplicationQuit() Gets invoked when the application is closed. Declaration void OnApplicationQuit() | Improve this Doc View Source OnApplicationStart() Gets invoked when the application is started. Declaration void OnApplicationStart() | Improve this Doc View Source OnFixedUpdate() Gets invoked on ever physics update. Declaration void OnFixedUpdate() | Improve this Doc View Source OnLevelWasInitialized(Int32) Gets invoked after the first update cycle after a level was loaded. Declaration void OnLevelWasInitialized(int level) Parameters Type Name Description Int32 level | Improve this Doc View Source OnLevelWasLoaded(Int32) Gets invoked whenever a level is loaded. Declaration void OnLevelWasLoaded(int level) Parameters Type Name Description Int32 level | Improve this Doc View Source OnUpdate() Gets invoked on every graphic update. Declaration void OnUpdate() Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.Stores.html": {
"href": "api/IPA.Config.Stores.html",
"title": "",
"keywords": "Classes GeneratedStore A class providing an extension for Config to make it easy to use generated config stores. ValueConverter A strongly-typed IValueConverter . Interfaces IValueConverter The base interface for a value converter for use by objects generated by Generated(Config, Boolean) ."
},
"api/IPA.Config.Stores.GeneratedStore.html": {
"href": "api/IPA.Config.Stores.GeneratedStore.html",
"title": "Class GeneratedStore",
"keywords": "Class GeneratedStore A class providing an extension for Config to make it easy to use generated config stores. Inheritance Object GeneratedStore Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores Assembly : IPA.Loader.dll Syntax public static class GeneratedStore Fields | Improve this Doc View Source AssemblyVisibilityTarget The name of the assembly that internals must be visible to to allow internal protection. Declaration public const string AssemblyVisibilityTarget = \"IPA.Config.Generated\" Field Value Type Description String Methods | Improve this Doc View Source Create() Creates a generated store outside of the context of the config system. Declaration public static T Create() where T : class Returns Type Description T a generated instance of T implementing functionality described by Generated(Config, Boolean) Type Parameters Name Description T the type to wrap Remarks See Generated(Config, Boolean) for more information about how it behaves. See Also Generated(Config, Boolean) | Improve this Doc View Source Generated(Config, Boolean) Creates a generated IConfigStore of type T , registers it to the Config object, and returns it. This also forces a synchronous config load via LoadSync() if loadSync is true . Declaration public static T Generated(this Config cfg, bool loadSync = true) where T : class Parameters Type Name Description Config cfg the Config to register to Boolean loadSync whether to synchronously load the content, or trigger an async load Returns Type Description T a generated instance of T as a special IConfigStore Type Parameters Name Description T the type to wrap Remarks T must be a public non- sealed class. It can also be internal, but in that case, then your assembly must have the following attribute to allow the generated code to reference it. [assembly: InternalsVisibleTo(IPA.Config.Stores.GeneratedStore.AssemblyVisibilityTarget)] Only fields and properties that are public or protected will be considered, and only properties where both the getter and setter are public or protected are considered. Any fields or properties with an IgnoreAttribute applied to them are also ignored. Having properties be virtual is not strictly necessary, however it allows the generated type to keep track of changes and lock around them so that the config will auto-save. All of the attributes in the IPA.Config.Stores.Attributes namespace are handled as described by them. If the T declares a public or protected, virtual method Changed() , then that method may be called to artificially signal to the runtime that the content of the object has changed. That method will also be called after the write locks are released when a property is set anywhere in the owning tree. This will only be called on the outermost generated object of the config structure, even if the change being signaled is somewhere deep into the tree. TODO: is this a good idea? Similarly, T can declare a public or protected, virtual method OnReload() , which will be called on the filesystem reader thread after the object has been repopulated with new data values. It will be called after the write lock for this object is released. This will only be called on the outermost generated object of the config structure. Similarly, T can declare a public or protected, virtual method CopyFrom(ConfigType) (the first parameter is the type it is defined on), which may be called to copy the properties from another object of its type easily, and more importantly, as only one change. Its body will be executed after the values have been copied. Similarly, T can declare a public or protected, virtual method ChangeTransaction() returning IDisposable , which may be called to get an object representing a transactional change. This may be used to change a lot of properties at once without triggering a save multiple times. Ideally, this is used in a langword_csharp_using block or declaration. The IDisposable returned from your implementation will have its Dispose() called after Changed() is called, but before the write lock is released. Unless you have a very good reason to use the nested IDisposable , avoid it. If T is marked with NotifyPropertyChangesAttribute , the resulting object will implement INotifyPropertyChanged . Similarly, if T implements INotifyPropertyChanged , the resulting object will implement it and notify it too."
},
"api/IPA.Config.Stores.Converters.html": {
"href": "api/IPA.Config.Stores.Converters.html",
"title": "",
"keywords": "Classes CollectionConverter A base class for all ICollection type converters, providing most of the functionality. CollectionConverter A CollectionConverter which default constructs a converter for use as the value converter. Converter Provides utility functions for custom converters. Converter Provides generic utilities for converters for certain types. CustomObjectConverter A ValueConverter for objects normally serialized to config via Generated(Config, Boolean) . IListConverter A CollectionConverter for an IList , creating a List when deserializing. IListConverter An IListConverter which default constructs a converter for use as the value converter. ISetConverter A CollectionConverter for an ISet , creating a HashSet when deserializing. ISetConverter An ISetConverter which default constructs a converter for use as the value converter. ListConverter A CollectionConverter for a List . ListConverter A ListConverter which default constructs a converter for use as the value converter. NullableConverter A converter for a Nullable . NullableConverter A converter for a Nullable that default-constructs a converter of type TConverter to use as the underlying converter. Use this in the UseConverterAttribute ."
},
"api/IPA.Config.Stores.Converters.NullableConverter-2.html": {
"href": "api/IPA.Config.Stores.Converters.NullableConverter-2.html",
"title": "Class NullableConverter",
"keywords": "Class NullableConverter A converter for a Nullable that default-constructs a converter of type TConverter to use as the underlying converter. Use this in the UseConverterAttribute . Inheritance Object ValueConverter < Nullable > NullableConverter NullableConverter Implements IValueConverter Inherited Members NullableConverter.FromValue(Value, Object) NullableConverter.ToValue(Nullable, Object) ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public sealed class NullableConverter : NullableConverter, IValueConverter where T : struct where TConverter : ValueConverter, new() Type Parameters Name Description T the underlying type of the Nullable TConverter the type to use as an underlying converter Constructors | Improve this Doc View Source NullableConverter() Creates a converter with a new TConverter as the underlying converter. Declaration public NullableConverter() See Also NullableConverter(ValueConverter) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[]) See Also NullableConverter "
},
"api/IPA.Config.Stores.Converters.NullableConverter-1.html": {
"href": "api/IPA.Config.Stores.Converters.NullableConverter-1.html",
"title": "Class NullableConverter",
"keywords": "Class NullableConverter A converter for a Nullable . Inheritance Object ValueConverter < Nullable > NullableConverter NullableConverter Implements IValueConverter Inherited Members ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public class NullableConverter : ValueConverter, IValueConverter where T : struct Type Parameters Name Description T the underlying type of the Nullable Constructors | Improve this Doc View Source NullableConverter() Creates a converter with the default converter for the base type. Equivalent to new NullableConverter(Converter.Default) Declaration public NullableConverter() See Also NullableConverter(ValueConverter) Default | Improve this Doc View Source NullableConverter(ValueConverter) Creates a converter with the given underlying ValueConverter . Declaration public NullableConverter(ValueConverter underlying) Parameters Type Name Description ValueConverter underlying the undlerlying ValueConverter to use Methods | Improve this Doc View Source FromValue(Value, Object) Converts a Value tree to a value. Declaration public override T? FromValue(Value value, object parent) Parameters Type Name Description Value value the Value tree to convert Object parent the object which will own the created object Returns Type Description Nullable the object represented by value Overrides IPA.Config.Stores.ValueConverter>.FromValue(IPA.Config.Data.Value, System.Object) | Improve this Doc View Source ToValue(Nullable, Object) Converts a nullable T to a Value tree. Declaration public override Value ToValue(T? obj, object parent) Parameters Type Name Description Nullable obj the value to serialize Object parent the object which owns obj Returns Type Description Value a Value tree representing obj . Overrides IPA.Config.Stores.ValueConverter>.ToValue(System.Nullable, System.Object) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.Stores.Converters.ISetConverter-2.html": {
"href": "api/IPA.Config.Stores.Converters.ISetConverter-2.html",
"title": "Class ISetConverter",
"keywords": "Class ISetConverter An ISetConverter which default constructs a converter for use as the value converter. Inheritance Object ValueConverter < ISet > CollectionConverter > ISetConverter ISetConverter Implements IValueConverter Inherited Members ISetConverter.Create(Int32, Object) CollectionConverter>.BaseConverter CollectionConverter>.Create(Int32, Object) CollectionConverter>.PopulateFromValue(ISet, List, Object) CollectionConverter>.FromValue(Value, Object) CollectionConverter>.ToValue(ISet, Object) ValueConverter>.ToValue(ISet, Object) ValueConverter>.FromValue(Value, Object) ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public sealed class ISetConverter : ISetConverter, IValueConverter where TConverter : ValueConverter, new() Type Parameters Name Description T the value type of the collection TConverter the type of the converter to use for T Constructors | Improve this Doc View Source ISetConverter() Creates an ISetConverter using a default constructed TConverter element type. Equivalent to calling ISetConverter(ValueConverter) with a default-constructed TConverter . Declaration public ISetConverter() See Also ISetConverter(ValueConverter) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[]) See Also ISetConverter "
},
"api/IPA.Config.Stores.Converters.ISetConverter-1.html": {
"href": "api/IPA.Config.Stores.Converters.ISetConverter-1.html",
"title": "Class ISetConverter",
"keywords": "Class ISetConverter A CollectionConverter for an ISet , creating a HashSet when deserializing. Inheritance Object ValueConverter < ISet > CollectionConverter > ISetConverter ISetConverter Implements IValueConverter Inherited Members CollectionConverter>.BaseConverter CollectionConverter>.Create(Int32, Object) CollectionConverter>.PopulateFromValue(ISet, List, Object) CollectionConverter>.FromValue(Value, Object) CollectionConverter>.ToValue(ISet, Object) ValueConverter>.ToValue(ISet, Object) ValueConverter>.FromValue(Value, Object) ValueConverter>.IValueConverter.ToValue(Object, Object) ValueConverter>.IValueConverter.FromValue(Value, Object) ValueConverter>.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public class ISetConverter : CollectionConverter>, IValueConverter Type Parameters Name Description T the element type of the ISet Constructors | Improve this Doc View Source ISetConverter() Creates an ISetConverter using the default converter for T . Declaration public ISetConverter() See Also CollectionConverter() | Improve this Doc View Source ISetConverter(ValueConverter) Creates an ISetConverter using the specified underlying converter for values. Declaration public ISetConverter(ValueConverter underlying) Parameters Type Name Description ValueConverter underlying the underlying ValueConverter to use for the values Methods | Improve this Doc View Source Create(Int32, Object) Creates a new ISet (a HashSet ) for deserialization. Declaration protected override ISet Create(int size, object parent) Parameters Type Name Description Int32 size the size to initialize it to Object parent the object that will own the new object Returns Type Description ISet the new ISet Overrides IPA.Config.Stores.Converters.CollectionConverter>.Create(System.Int32, System.Object) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[]) See Also CollectionConverter "
},
"api/IPA.Config.Stores.Converters.CustomObjectConverter-1.html": {
"href": "api/IPA.Config.Stores.Converters.CustomObjectConverter-1.html",
"title": "Class CustomObjectConverter",
"keywords": "Class CustomObjectConverter A ValueConverter for objects normally serialized to config via Generated(Config, Boolean) . Inheritance Object ValueConverter CustomObjectConverter Implements IValueConverter Inherited Members ValueConverter.IValueConverter.ToValue(Object, Object) ValueConverter.IValueConverter.FromValue(Value, Object) ValueConverter.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public class CustomObjectConverter : ValueConverter, IValueConverter where T : class Type Parameters Name Description T the same type parameter that would be passed into Generated(Config, Boolean) Methods | Improve this Doc View Source Deserialize(Value, Object) Deserializes value into a T with the given parent . Declaration public static T Deserialize(Value value, object parent) Parameters Type Name Description Value value the Value to deserialize Object parent the parent object that will own the deserialized value Returns Type Description T the deserialized value See Also FromValue ( Value , Object ) | Improve this Doc View Source FromValue(Value, Object) Deserializes value into a T with the given parent . Declaration public override T FromValue(Value value, object parent) Parameters Type Name Description Value value the Value to deserialize Object parent the parent object that will own the deserialized value Returns Type Description T the deserialized value Overrides IPA.Config.Stores.ValueConverter.FromValue(IPA.Config.Data.Value, System.Object) See Also FromValue ( Value , Object ) | Improve this Doc View Source Serialize(T, Object) Serializes obj into a Value structure, given parent . Declaration public static Value Serialize(T obj, object parent) Parameters Type Name Description T obj the object to serialize Object parent the parent object that owns obj Returns Type Description Value the Value tree that represents obj See Also ToValue (T, Object ) | Improve this Doc View Source ToValue(T, Object) Serializes obj into a Value structure, given parent . Declaration public override Value ToValue(T obj, object parent) Parameters Type Name Description T obj the object to serialize Object parent the parent object that owns obj Returns Type Description Value the Value tree that represents obj Overrides IPA.Config.Stores.ValueConverter.ToValue(T, System.Object) See Also ToValue (T, Object ) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[]) See Also Generated ( Config , Boolean )"
},
"api/IPA.Config.Stores.Converters.Converter.html": {
"href": "api/IPA.Config.Stores.Converters.Converter.html",
"title": "Class Converter",
"keywords": "Class Converter Provides utility functions for custom converters. Inheritance Object Converter Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public static class Converter Methods | Improve this Doc View Source FloatValue(Value) Gets the floaing point value of a Value , coercing an Integer if necessary, or null if val is not an Integer or FloatingPoint . Declaration public static decimal? FloatValue(Value val) Parameters Type Name Description Value val the Value to get the floaing point value of Returns Type Description Nullable < Decimal > the floaing point value of val , or null | Improve this Doc View Source IntValue(Value) Gets the integral value of a Value , coercing a FloatingPoint if necessary, or null if val is not an Integer or FloatingPoint . Declaration public static long? IntValue(Value val) Parameters Type Name Description Value val the Value to get the integral value of Returns Type Description Nullable < Int64 > the integral value of val , or null"
},
"api/IPA.Config.Stores.Converters.CollectionConverter-2.html": {
"href": "api/IPA.Config.Stores.Converters.CollectionConverter-2.html",
"title": "Class CollectionConverter",
"keywords": "Class CollectionConverter A base class for all ICollection type converters, providing most of the functionality. Inheritance Object ValueConverter CollectionConverter CollectionConverter IListConverter ISetConverter ListConverter Implements IValueConverter Inherited Members ValueConverter.IValueConverter.ToValue(Object, Object) ValueConverter.IValueConverter.FromValue(Value, Object) ValueConverter.IValueConverter.Type Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Converters Assembly : IPA.Loader.dll Syntax public class CollectionConverter : ValueConverter, IValueConverter where TCollection : ICollection Type Parameters Name Description T the type of the items in the collection TCollection the instantiated type of collection Constructors | Improve this Doc View Source CollectionConverter() Creates a CollectionConverter using the default converter for the element type. Equivalent to calling CollectionConverter(ValueConverter) with Default . Declaration public CollectionConverter() See Also CollectionConverter(ValueConverter) | Improve this Doc View Source CollectionConverter(ValueConverter) Creates a CollectionConverter using the specified underlying converter. Declaration public CollectionConverter(ValueConverter underlying) Parameters Type Name Description ValueConverter underlying the ValueConverter to use to convert the values Properties | Improve this Doc View Source BaseConverter Gets the converter for the collection's value type. Declaration protected ValueConverter BaseConverter { get; } Property Value Type Description ValueConverter Methods | Improve this Doc View Source Create(Int32, Object) Creates a collection of type TCollection using the size and parent . Declaration protected virtual TCollection Create(int size, object parent) Parameters Type Name Description Int32 size the initial size of the collecion Object parent the object that will own the new collection Returns Type Description TCollection a new instance of TCollection See Also FromValue ( Value , Object ) | Improve this Doc View Source FromValue(Value, Object) Deserializes a List in value into a new TCollection owned by parent . Declaration public override TCollection FromValue(Value value, object parent) Parameters Type Name Description Value value the List to convert to a TCollection Object parent the object that will own the resulting TCollection Returns Type Description TCollection a new TCollection holding the deserialized content of value Overrides IPA.Config.Stores.ValueConverter.FromValue(IPA.Config.Data.Value, System.Object) See Also FromValue ( Value , Object ) | Improve this Doc View Source PopulateFromValue(TCollection, List, Object) Populates the colleciton col with the deserialized values from list with the parent parent . Declaration protected void PopulateFromValue(TCollection col, List list, object parent) Parameters Type Name Description TCollection col the collection to populate List list the values to populate it with Object parent the object that will own the new objects See Also FromValue ( Value , Object ) | Improve this Doc View Source ToValue(TCollection, Object) Serializes a TCollection into a List . Declaration public override Value ToValue(TCollection obj, object parent) Parameters Type Name Description TCollection obj the TCollection to serialize Object parent the object owning obj Returns Type Description Value the List that obj was serialized into Overrides IPA.Config.Stores.ValueConverter.ToValue(TCollection, System.Object) See Also ToValue (T, Object ) Implements IValueConverter Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.Stores.Attributes.html": {
"href": "api/IPA.Config.Stores.Attributes.html",
"title": "",
"keywords": "Classes IgnoreAttribute Causes a field or property in an object being wrapped by Generated(Config, Boolean) to be ignored during serialization and deserialization. NonNullableAttribute Indicates that a field or property in an object being wrapped by Generated(Config, Boolean) that would otherwise be nullable (i.e. a reference type or a Nullable type) should never be null, and the member will be ignored if the deserialized value is null . NotifyPropertyChangesAttribute Indicates that the generated subclass of the attribute's target should implement INotifyPropertyChanged . If the type this is applied to already inherits it, this is implied. SerializedNameAttribute Specifies a name for the serialized field or property in an object being wrapped by Generated(Config, Boolean) that is different from the member name itself. UseConverterAttribute Indicates that a given field or property in an object being wrapped by Generated(Config, Boolean) should be serialized and deserialized using the provided converter instead of the default mechanism."
},
"api/IPA.Config.Stores.Attributes.NotifyPropertyChangesAttribute.html": {
"href": "api/IPA.Config.Stores.Attributes.NotifyPropertyChangesAttribute.html",
"title": "Class NotifyPropertyChangesAttribute",
"keywords": "Class NotifyPropertyChangesAttribute Indicates that the generated subclass of the attribute's target should implement INotifyPropertyChanged . If the type this is applied to already inherits it, this is implied. Inheritance Object Attribute NotifyPropertyChangesAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Attributes Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)] public sealed class NotifyPropertyChangesAttribute : Attribute, _Attribute Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.Stores.Attributes.NonNullableAttribute.html": {
"href": "api/IPA.Config.Stores.Attributes.NonNullableAttribute.html",
"title": "Class NonNullableAttribute",
"keywords": "Class NonNullableAttribute Indicates that a field or property in an object being wrapped by Generated(Config, Boolean) that would otherwise be nullable (i.e. a reference type or a Nullable type) should never be null, and the member will be ignored if the deserialized value is null . Inheritance Object Attribute NonNullableAttribute Implements _Attribute Inherited Members Attribute.GetCustomAttributes(MemberInfo, Type) Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(MemberInfo) Attribute.GetCustomAttributes(MemberInfo, Boolean) Attribute.IsDefined(MemberInfo, Type) Attribute.IsDefined(MemberInfo, Type, Boolean) Attribute.GetCustomAttribute(MemberInfo, Type) Attribute.GetCustomAttribute(MemberInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo) Attribute.GetCustomAttributes(ParameterInfo, Type) Attribute.GetCustomAttributes(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(ParameterInfo, Boolean) Attribute.IsDefined(ParameterInfo, Type) Attribute.IsDefined(ParameterInfo, Type, Boolean) Attribute.GetCustomAttribute(ParameterInfo, Type) Attribute.GetCustomAttribute(ParameterInfo, Type, Boolean) Attribute.GetCustomAttributes(Module, Type) Attribute.GetCustomAttributes(Module) Attribute.GetCustomAttributes(Module, Boolean) Attribute.GetCustomAttributes(Module, Type, Boolean) Attribute.IsDefined(Module, Type) Attribute.IsDefined(Module, Type, Boolean) Attribute.GetCustomAttribute(Module, Type) Attribute.GetCustomAttribute(Module, Type, Boolean) Attribute.GetCustomAttributes(Assembly, Type) Attribute.GetCustomAttributes(Assembly, Type, Boolean) Attribute.GetCustomAttributes(Assembly) Attribute.GetCustomAttributes(Assembly, Boolean) Attribute.IsDefined(Assembly, Type) Attribute.IsDefined(Assembly, Type, Boolean) Attribute.GetCustomAttribute(Assembly, Type) Attribute.GetCustomAttribute(Assembly, Type, Boolean) Attribute.Equals(Object) Attribute.GetHashCode() Attribute.Match(Object) Attribute.IsDefaultAttribute() Attribute._Attribute.GetTypeInfoCount(UInt32) Attribute._Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) Attribute._Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) Attribute._Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) Attribute.TypeId Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : IPA.Config.Stores.Attributes Assembly : IPA.Loader.dll Syntax [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, AllowMultiple = false, Inherited = true)] public sealed class NonNullableAttribute : Attribute, _Attribute Implements System.Runtime.InteropServices._Attribute Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.IModPrefs.html": {
"href": "api/IPA.Config.IModPrefs.html",
"title": "Interface IModPrefs",
"keywords": "Interface IModPrefs Allows to get and set preferences for your mod. Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax [Obsolete(\"Uses IniFile, which uses 16 bit system calls. Use BS Utils INI system for now.\")] public interface IModPrefs Methods | Improve this Doc View Source GetBool(String, String, Boolean, Boolean) Gets a bool from the ini. Declaration bool GetBool(string section, string name, bool defaultValue = false, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Boolean | Improve this Doc View Source GetFloat(String, String, Single, Boolean) Gets a float from the ini. Declaration float GetFloat(string section, string name, float defaultValue = 0F, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Single defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Single | Improve this Doc View Source GetInt(String, String, Int32, Boolean) Gets an int from the ini. Declaration int GetInt(string section, string name, int defaultValue = 0, bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description Int32 | Improve this Doc View Source GetString(String, String, String, Boolean) Gets a string from the ini. Declaration string GetString(string section, string name, string defaultValue = \"\", bool autoSave = false) Parameters Type Name Description String section Section of the key. String name Name of the key. String defaultValue Value that should be used when no value is found. Boolean autoSave Whether or not the default value should be written if no value is found. Returns Type Description String | Improve this Doc View Source HasKey(String, String) Checks whether or not a key exists in the ini. Declaration bool HasKey(string section, string name) Parameters Type Name Description String section Section of the key. String name Name of the key. Returns Type Description Boolean | Improve this Doc View Source SetBool(String, String, Boolean) Sets a bool in the ini. Declaration void SetBool(string section, string name, bool value) Parameters Type Name Description String section Section of the key. String name Name of the key. Boolean value Value that should be written. | Improve this Doc View Source SetFloat(String, String, Single) Sets a float in the ini. Declaration void SetFloat(string section, string name, float value) Parameters Type Name Description String section Section of the key. String name Name of the key. Single value Value that should be written. | Improve this Doc View Source SetInt(String, String, Int32) Sets an int in the ini. Declaration void SetInt(string section, string name, int value) Parameters Type Name Description String section Section of the key. String name Name of the key. Int32 value Value that should be written. | Improve this Doc View Source SetString(String, String, String) Sets a string in the ini. Declaration void SetString(string section, string name, string value) Parameters Type Name Description String section Section of the key. String name Name of the key. String value Value that should be written. Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty(T, String) ReflectionUtil.InvokeMethod(T, String, Object[])"
},
"api/IPA.Config.IConfigStore.html": {
"href": "api/IPA.Config.IConfigStore.html",
"title": "Interface IConfigStore",
"keywords": "Interface IConfigStore A storage for a config structure. Namespace : IPA.Config Assembly : IPA.Loader.dll Syntax public interface IConfigStore Properties | Improve this Doc View Source SyncObject A synchronization object for the save thread to wait on for changes. It should be signaled whenever the internal state of the object is changed. The writer will never signal this handle. Declaration WaitHandle SyncObject { get; } Property Value Type Description WaitHandle | Improve this Doc View Source WriteSyncObject A synchronization object for the load thread and accessors to maintain safe synchronization. Any readers should take a read lock with EnterReadLock() or EnterUpgradeableReadLock() , and any writers should take a write lock with EnterWriteLock() . Declaration ReaderWriterLockSlim WriteSyncObject { get; } Property Value Type Description ReaderWriterLockSlim Remarks Read and write are read and write to this object , not to the file on disk. Methods | Improve this Doc View Source ReadFrom(ConfigProvider) Reads the config structure from the given IConfigProvider into the current IConfigStore . Declaration void ReadFrom(ConfigProvider provider) Parameters Type Name Description ConfigProvider provider the provider to read from Remarks The calling code will have entered a write lock on WriteSyncObject when this is called. | Improve this Doc View Source WriteTo(ConfigProvider) Writes the config structure stored by the current IConfigStore to the given IConfigProvider . Declaration void WriteTo(ConfigProvider provider) Parameters Type Name Description ConfigProvider provider the provider to write to Remarks The calling code will have entered a read lock on WriteSyncObject when this is called. Extension Methods ReflectionUtil.SetField(T, String, U) ReflectionUtil.GetField(T, String) ReflectionUtil.SetProperty(T, String, U) ReflectionUtil.GetProperty