Add project files.

This commit is contained in:
Martijn Dijkstra
2025-05-08 09:10:15 +02:00
parent 7be30a6f28
commit 6a44bd4fd2
211 changed files with 729572 additions and 0 deletions

BIN
ESD_warningsign.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings/>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

Binary file not shown.

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

Binary file not shown.

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,296 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>K4os.Compression.LZ4.Streams</name>
</assembly>
<members>
<member name="T:K4os.Compression.LZ4.Streams.ILZ4Descriptor">
<summary>
LZ4 Frame descriptor.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.ContentLength">
<summary>Content length. Not always known.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.ContentChecksum">
<summary>Indicates if content checksum is provided.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.Chaining">
<summary>Indicates if blocks are chained (dependent) or not (independent).</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.BlockChecksum">
<summary>Indicates if block checksums are provided.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.Dictionary">
<summary>Dictionary id. May be null.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.ILZ4Descriptor.BlockSize">
<summary>Block size.</summary>
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4DecoderSettings">
<summary>
Decoder settings.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderSettings.ExtraMemory">
<summary>Extra memory for decompression.</summary>
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4DecoderStream">
<summary>
LZ4 Decompression stream handling.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.#ctor(System.IO.Stream,System.Func{K4os.Compression.LZ4.Streams.ILZ4Descriptor,K4os.Compression.LZ4.Encoders.ILZ4Decoder},System.Boolean)">
<summary>Creates new instance <see cref="T:K4os.Compression.LZ4.Streams.LZ4DecoderStream"/>.</summary>
<param name="inner">Inner stream.</param>
<param name="decoderFactory">A function which will create appropriate decoder depending
on frame descriptor.</param>
<param name="leaveOpen">If <c>true</c> inner stream will not be closed after disposing.</param>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Flush">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.FlushAsync(System.Threading.CancellationToken)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Read(System.Byte[],System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.ReadByte">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Dispose">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Dispose(System.Boolean)">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.CanRead">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.CanSeek">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.CanWrite">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Length">
<summary>
Length of stream. Please note, this will only work if original LZ4 stream has
<c>ContentLength</c> field set in descriptor. Otherwise returned value will be <c>-1</c>.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Position">
<summary>
Position within the stream. Position can be read, but cannot be set as LZ4 stream does
not have <c>Seek</c> capability.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.CanTimeout">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.WriteTimeout">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4DecoderStream.ReadTimeout">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Seek(System.Int64,System.IO.SeekOrigin)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.SetLength(System.Int64)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.Write(System.Byte[],System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.WriteByte(System.Byte)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4DecoderStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4EncoderSettings">
<summary>
LZ4 encoder settings.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.ContentLength">
<summary>
Content length. It is not enforced, it can be set to any value, but it will be
written to the stream so it can be used while decoding. If you don't know the length
just leave default value.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.ChainBlocks">
<summary>
Indicates if blocks should be chained (dependent) or not (independent). Dependent blocks
(with chaining) provide better compression ratio but are a little but slower and take
more memory.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.BlockSize">
<summary>
Block size. You can use any block size, but default values for LZ4 are 64k, 256k, 1m,
and 4m. 64k is good enough for dependent blocks, but for independent blocks bigger is
better.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.ContentChecksum">
<summary>Indicates is content checksum is provided. Not implemented yet.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.BlockChecksum">
<summary>Indicates if block checksum is provided. Not implemented yet.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.Dictionary">
<summary>Dictionary id. Not implemented yet.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.CompressionLevel">
<summary>Compression level.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderSettings.ExtraMemory">
<summary>Extra memory (for the process, more is usually better).</summary>
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4EncoderStream">
<summary>
LZ4 compression stream.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.#ctor(System.IO.Stream,K4os.Compression.LZ4.Streams.ILZ4Descriptor,System.Func{K4os.Compression.LZ4.Streams.ILZ4Descriptor,K4os.Compression.LZ4.Encoders.ILZ4Encoder},System.Boolean)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Streams.LZ4EncoderStream"/>.</summary>
<param name="inner">Inner stream.</param>
<param name="descriptor">LZ4 Descriptor.</param>
<param name="encoderFactory">Function which will take descriptor and return
appropriate encoder.</param>
<param name="leaveOpen">Indicates if <paramref name="inner"/> stream should be left
open after disposing.</param>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Flush">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.FlushAsync(System.Threading.CancellationToken)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Close">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.WriteByte(System.Byte)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Write(System.Byte[],System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Dispose">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Dispose(System.Boolean)">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.CanRead">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.CanSeek">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.CanWrite">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Length">
<summary>Length of the stream and number of bytes written so far.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Position">
<summary>Read-only position in the stream. Trying to set it will throw
<see cref="T:System.InvalidOperationException"/>.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.CanTimeout">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.ReadTimeout">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4EncoderStream.WriteTimeout">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Seek(System.Int64,System.IO.SeekOrigin)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.SetLength(System.Int64)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.Read(System.Byte[],System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4EncoderStream.ReadByte">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4Descriptor">
<summary>
LZ4 frame descriptor.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.ContentLength">
<summary>Content length (if available).</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.ContentChecksum">
<summary>Indicates if content checksum if present.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.Chaining">
<summary>Indicates if blocks are chained.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.BlockChecksum">
<summary>Indicates if block checksums are present.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.Dictionary">
<summary>Dictionary id (or null).</summary>
</member>
<member name="P:K4os.Compression.LZ4.Streams.LZ4Descriptor.BlockSize">
<summary>Block size.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4Descriptor.#ctor(System.Nullable{System.Int64},System.Boolean,System.Boolean,System.Boolean,System.Nullable{System.UInt32},System.Int32)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Streams.LZ4Descriptor"/>.</summary>
<param name="contentLength">Content length.</param>
<param name="contentChecksum">Content checksum flag.</param>
<param name="chaining">Chaining flag.</param>
<param name="blockChecksum">Block checksum flag.</param>
<param name="dictionary">Dictionary id.</param>
<param name="blockSize">Block size.</param>
</member>
<member name="T:K4os.Compression.LZ4.Streams.LZ4Stream">
<summary>
Utility class with factory methods to create LZ4 compression and decompression streams.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4Stream.Encode(System.IO.Stream,K4os.Compression.LZ4.Streams.LZ4EncoderSettings,System.Boolean)">
<summary>Created compression stream on top of inner stream.</summary>
<param name="stream">Inner stream.</param>
<param name="settings">Compression settings.</param>
<param name="leaveOpen">Leave inner stream open after disposing.</param>
<returns>Compression stream.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4Stream.Encode(System.IO.Stream,K4os.Compression.LZ4.LZ4Level,System.Int32,System.Boolean)">
<summary>Created compression stream on top of inner stream.</summary>
<param name="stream">Inner stream.</param>
<param name="level">Compression level.</param>
<param name="extraMemory">Extra memory used for compression.</param>
<param name="leaveOpen">Leave inner stream open after disposing.</param>
<returns>Compression stream.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4Stream.Decode(System.IO.Stream,K4os.Compression.LZ4.Streams.LZ4DecoderSettings,System.Boolean)">
<summary>Creates decompression stream on top of inner stream.</summary>
<param name="stream">Inner stream.</param>
<param name="settings">Decompression settings.</param>
<param name="leaveOpen">Leave inner stream open after disposing.</param>
<returns>Decompression stream.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Streams.LZ4Stream.Decode(System.IO.Stream,System.Int32,System.Boolean)">
<summary>Creates decompression stream on top of inner stream.</summary>
<param name="stream">Inner stream.</param>
<param name="extraMemory">Extra memory used for decompression.</param>
<param name="leaveOpen">Leave inner stream open after disposing.</param>
<returns>Decompression stream.</returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,794 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>K4os.Compression.LZ4</name>
</assembly>
<members>
<member name="T:K4os.Compression.LZ4.Encoders.EncoderAction">
<summary>
Action performed by encoder using <c>FlushAndEncode</c> method.
</summary>
</member>
<member name="F:K4os.Compression.LZ4.Encoders.EncoderAction.None">
<summary>Nothing has happened, most likely loading 0 bytes.</summary>
</member>
<member name="F:K4os.Compression.LZ4.Encoders.EncoderAction.Loaded">
<summary>Some bytes has been loaded into encoder.</summary>
</member>
<member name="F:K4os.Compression.LZ4.Encoders.EncoderAction.Copied">
<summary>Compression was not possible so bytes has been copied.</summary>
</member>
<member name="F:K4os.Compression.LZ4.Encoders.EncoderAction.Encoded">
<summary>Compression succeeded.</summary>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.ILZ4Decoder">
<summary>
Interface of LZ4 decoder used by LZ4 streams.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.ILZ4Decoder.BlockSize">
<summary>Block size.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.ILZ4Decoder.BytesReady">
<summary>Bytes already decoded and available to be read.
Always smaller than <see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Decoder.BlockSize"/></summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.ILZ4Decoder.Decode(System.Byte*,System.Int32,System.Int32)">
<summary>
Decodes previously compressed block and caches decompressed block in decoder.
Returns number of bytes decoded. These bytes can be read with <see cref="M:K4os.Compression.LZ4.Encoders.ILZ4Decoder.Drain(System.Byte*,System.Int32,System.Int32)" />.
</summary>
<param name="source">Points to compressed block.</param>
<param name="length">Length of compressed block.</param>
<param name="blockSize">Size of the block. Value <c>0</c> indicates default block size.</param>
<returns>Number of decoded bytes.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.ILZ4Decoder.Inject(System.Byte*,System.Int32)">
<summary>
Inject already decompressed block and caches it in decoder.
Used with uncompressed-yet-chained blocks and pre-made dictionaries.
These bytes can be read with <see cref="M:K4os.Compression.LZ4.Encoders.ILZ4Decoder.Drain(System.Byte*,System.Int32,System.Int32)" />.
</summary>
<param name="source">Points to uncompressed block.</param>
<param name="length">Length of uncompressed block.</param>
<returns>Number of decoded bytes.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.ILZ4Decoder.Drain(System.Byte*,System.Int32,System.Int32)">
<summary>
Reads previously decoded bytes. Please note, <paramref name="offset"/> should be
negative number, pointing to bytes before current head.
</summary>
<param name="target">Buffer to write to.</param>
<param name="offset">Offset in source buffer relatively to current head.
Please note, it should be negative value.</param>
<param name="length">Number of bytes to read.</param>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.ILZ4Encoder">
<summary>
Interface of LZ4 encoder used by LZ4 streams.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BlockSize">
<summary>Block size.</summary>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BytesReady">
<summary>Number of bytes read for compression.
Always smaller than <see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BlockSize"/></summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.ILZ4Encoder.Topup(System.Byte*,System.Int32)">
<summary>Adds bytes to internal buffer. Increases <see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BytesReady"/></summary>
<param name="source">Source buffer.</param>
<param name="length">Source buffer length.</param>
<returns>Number of bytes topped up. If this function returns 0 it means that buffer
is full (<see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BytesReady"/> equals <see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BlockSize"/>) and
<see cref="M:K4os.Compression.LZ4.Encoders.ILZ4Encoder.Encode(System.Byte*,System.Int32,System.Boolean)"/> should be called to flush it.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.ILZ4Encoder.Encode(System.Byte*,System.Int32,System.Boolean)">
<summary>
Encodes bytes in internal buffer (see: <see cref="P:K4os.Compression.LZ4.Encoders.ILZ4Encoder.BytesReady"/>, <see cref="M:K4os.Compression.LZ4.Encoders.ILZ4Encoder.Topup(System.Byte*,System.Int32)"/>).
If <paramref name="allowCopy"/> is <c>true</c> then if encoded buffer is bigger than
source buffer source bytes are copied instead. In such case returned length is negative.
</summary>
<param name="target">Target buffer.</param>
<param name="length">Target buffer length.</param>
<param name="allowCopy">Indicates if copying is allowed.</param>
<returns>Length of encoded buffer. Negative if bytes are just copied.</returns>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder">
<summary>
LZ4 decoder used with independent blocks mode. Plase note, that it will fail
if input data has been compressed with chained blocks
(<see cref="T:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder"/> and <see cref="T:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder"/>)
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.BlockSize">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.BytesReady">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.#ctor(System.Int32)">
<summary>Creates new instance of block decoder.</summary>
<param name="blockSize">Block size. Must be equal or greater to one used for compression.</param>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.Decode(System.Byte*,System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.Inject(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.Drain(System.Byte*,System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockDecoder.ReleaseUnmanaged">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder">
<summary>
Independent block encoder. Produces larger files but uses less memory and
gives better performance.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder.#ctor(K4os.Compression.LZ4.LZ4Level,System.Int32)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder"/></summary>
<param name="level">Compression level.</param>
<param name="blockSize">Block size.</param>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder.EncodeBlock(System.Byte*,System.Int32,System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder.CopyDict(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder">
<summary>LZ4 decoder handling dependent blocks.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.#ctor(System.Int32,System.Int32)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder"/>.</summary>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.BlockSize">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.BytesReady">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.Decode(System.Byte*,System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.Inject(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.Drain(System.Byte*,System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4ChainDecoder.ReleaseUnmanaged">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4Decoder">
<summary>
Static class with factory methods to create LZ4 decoders.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4Decoder.Create(System.Boolean,System.Int32,System.Int32)">
<summary>Creates appropriate decoder for given parameters.</summary>
<param name="chaining">Dependent blocks.</param>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
<returns>LZ4 decoder.</returns>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4Encoder">
<summary>
Static class with factory method to create LZ4 encoders.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4Encoder.Create(System.Boolean,K4os.Compression.LZ4.LZ4Level,System.Int32,System.Int32)">
<summary>Creates appropriate decoder for given parameters.</summary>
<param name="chaining">Dependent blocks.</param>
<param name="level">Compression level.</param>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
<returns>LZ4 encoder.</returns>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4EncoderBase">
<summary>
Base class for LZ4 encoders. Provides basic functionality shared by
<see cref="T:K4os.Compression.LZ4.Encoders.LZ4BlockEncoder"/>, <see cref="T:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder"/>,
and <see cref="T:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder"/> encoders. Do not used directly.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.#ctor(System.Boolean,System.Int32,System.Int32)">
<summary>Creates new instance of encoder.</summary>
<param name="chaining">Needs to be <c>true</c> if using dependent blocks.</param>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.BlockSize">
<inheritdoc />
</member>
<member name="P:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.BytesReady">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.Topup(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.Encode(System.Byte*,System.Int32,System.Boolean)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.EncodeBlock(System.Byte*,System.Int32,System.Byte*,System.Int32)">
<summary>Encodes single block using appropriate algorithm.</summary>
<param name="source">Source buffer.</param>
<param name="sourceLength">Source buffer length.</param>
<param name="target">Target buffer.</param>
<param name="targetLength">Target buffer length.</param>
<returns>Number of bytes actually written to target buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.CopyDict(System.Byte*,System.Int32)">
<summary>Copies current dictionary.</summary>
<param name="target">Target buffer.</param>
<param name="dictionaryLength">Dictionary length.</param>
<returns>Dictionary length.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderBase.ReleaseUnmanaged">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions">
<summary>
Functionality of encoders added on top of fixed interface.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Topup(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte*@,System.Int32)">
<summary>Tops encoder up with some data.</summary>
<param name="encoder">Encoder.</param>
<param name="source">Buffer pointer, will be shifted after operation by the number of
bytes actually loaded.</param>
<param name="length">Length of buffer.</param>
<returns><c>true</c> if buffer was topped up, <c>false</c> if no bytes were loaded.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Topup(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32,System.Int32)">
<summary>Tops encoder up with some data.</summary>
<param name="encoder">Encoder.</param>
<param name="source">Buffer.</param>
<param name="offset">Buffer offset.</param>
<param name="length">Length of buffer.</param>
<returns>Number of bytes actually loaded.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Topup(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32@,System.Int32)">
<summary>Tops encoder up with some data.</summary>
<param name="encoder">Encoder.</param>
<param name="source">Buffer.</param>
<param name="offset">Buffer offset, will be increased after operation by the number
of bytes actually loaded.</param>
<param name="length">Length of buffer.</param>
<returns><c>true</c> if buffer was topped up, <c>false</c> if no bytes were loaded.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Encode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32,System.Int32,System.Boolean)">
<summary>Encodes all bytes currently stored in encoder into target buffer.</summary>
<param name="encoder">Encoder.</param>
<param name="target">Target buffer.</param>
<param name="offset">Offset in target buffer.</param>
<param name="length">Length of target buffer.</param>
<param name="allowCopy">if <c>true</c> copying bytes is allowed.</param>
<returns>Number of bytes encoder. If bytes were copied than this value is negative.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Encode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32@,System.Int32,System.Boolean)">
<summary>Encodes all bytes currently stored in encoder into target buffer.</summary>
<param name="encoder">Encoder.</param>
<param name="target">Target buffer.</param>
<param name="offset">Offset in target buffer. Will be updated after operation.</param>
<param name="length">Length of target buffer.</param>
<param name="allowCopy">if <c>true</c> copying bytes is allowed.</param>
<returns>Result of this action. Bytes can be Copied (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.Copied"/>),
Encoded (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.Encoded"/>) or nothing could have
happened (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.None"/>).</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Encode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte*@,System.Int32,System.Boolean)">
<summary>Encodes all bytes currently stored in encoder into target buffer.</summary>
<param name="encoder">Encoder.</param>
<param name="target">Target buffer. Will be updated after operation.</param>
<param name="length">Length of buffer.</param>
<param name="allowCopy">if <c>true</c> copying bytes is allowed.</param>
<returns>Result of this action. Bytes can be Copied (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.Copied"/>),
Encoded (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.Encoded"/>) or nothing could have
happened (<see cref="F:K4os.Compression.LZ4.Encoders.EncoderAction.None"/>).</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.TopupAndEncode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte*,System.Int32,System.Byte*,System.Int32,System.Boolean,System.Boolean,System.Int32@,System.Int32@)">
<summary>Tops encoder and encodes content.</summary>
<param name="encoder">Encoder.</param>
<param name="source">Source buffer (used to top up from).</param>
<param name="sourceLength">Source buffer length.</param>
<param name="target">Target buffer (used to encode into)</param>
<param name="targetLength">Target buffer length.</param>
<param name="forceEncode">Forces encoding even if encoder is not full.</param>
<param name="allowCopy">Allows to copy bytes if compression was not possible.</param>
<param name="loaded">Number of bytes loaded (topped up)</param>
<param name="encoded">Number if bytes encoded or copied.
Value is 0 if no encoding was done.</param>
<returns>Action performed.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.TopupAndEncode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32,System.Boolean,System.Boolean,System.Int32@,System.Int32@)">
<summary>Tops encoder and encodes content.</summary>
<param name="encoder">Encoder.</param>
<param name="source">Source buffer (used to top up from).</param>
<param name="sourceOffset">Offset within source buffer.</param>
<param name="sourceLength">Source buffer length.</param>
<param name="target">Target buffer (used to encode into)</param>
<param name="targetOffset">Offset within target buffer.</param>
<param name="targetLength">Target buffer length.</param>
<param name="forceEncode">Forces encoding even if encoder is not full.</param>
<param name="allowCopy">Allows to copy bytes if compression was not possible.</param>
<param name="loaded">Number of bytes loaded (topped up)</param>
<param name="encoded">Number if bytes encoded or copied.
Value is 0 if no encoding was done.</param>
<returns>Action performed.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.FlushAndEncode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte*,System.Int32,System.Boolean,System.Int32@)">
<summary>Encoded remaining bytes in encoder.</summary>
<param name="encoder">Encoder.</param>
<param name="target">Target buffer.</param>
<param name="targetLength">Target buffer length.</param>
<param name="allowCopy">Allows to copy bytes if compression was not possible.</param>
<param name="encoded">Number if bytes encoded or copied.
Value is 0 if no encoding was done.</param>
<returns>Action performed.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.FlushAndEncode(K4os.Compression.LZ4.Encoders.ILZ4Encoder,System.Byte[],System.Int32,System.Int32,System.Boolean,System.Int32@)">
<summary>Encoded remaining bytes in encoder.</summary>
<param name="encoder">Encoder.</param>
<param name="target">Target buffer.</param>
<param name="targetOffset">Offset within target buffer.</param>
<param name="targetLength">Target buffer length.</param>
<param name="allowCopy">Allows to copy bytes if compression was not possible.</param>
<param name="encoded">Number if bytes encoded or copied.
Value is 0 if no encoding was done.</param>
<returns>Action performed.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.Drain(K4os.Compression.LZ4.Encoders.ILZ4Decoder,System.Byte[],System.Int32,System.Int32,System.Int32)">
<summary>Drains decoder by reading all bytes which are ready.</summary>
<param name="decoder">Decoder.</param>
<param name="target">Target buffer.</param>
<param name="targetOffset">Offset within target buffer.</param>
<param name="offset">Offset in decoder relatively to decoder's head.
Please note, it should be negative value.</param>
<param name="length">Number of bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.DecodeAndDrain(K4os.Compression.LZ4.Encoders.ILZ4Decoder,System.Byte*,System.Int32,System.Byte*,System.Int32,System.Int32@)">
<summary>Decodes data and immediately drains it into target buffer.</summary>
<param name="decoder">Decoder.</param>
<param name="source">Source buffer (with compressed data, to be decoded).</param>
<param name="sourceLength">Source buffer length.</param>
<param name="target">Target buffer (to drained into).</param>
<param name="targetLength">Target buffer length.</param>
<param name="decoded">Number of bytes actually decoded.</param>
<returns><c>true</c> decoder was drained, <c>false</c> otherwise.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4EncoderExtensions.DecodeAndDrain(K4os.Compression.LZ4.Encoders.ILZ4Decoder,System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32,System.Int32@)">
<summary>Decodes data and immediately drains it into target buffer.</summary>
<param name="decoder">Decoder.</param>
<param name="source">Source buffer (with compressed data, to be decoded).</param>
<param name="sourceOffset">Offset within source buffer.</param>
<param name="sourceLength">Source buffer length.</param>
<param name="target">Target buffer (to drained into).</param>
<param name="targetOffset">Offset within target buffer.</param>
<param name="targetLength">Target buffer length.</param>
<param name="decoded">Number of bytes actually decoded.</param>
<returns><c>true</c> decoder was drained, <c>false</c> otherwise.</returns>
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder">
<summary>
LZ4 encoder using dependent blocks with fast compression.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder.#ctor(System.Int32,System.Int32)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder"/></summary>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder.ReleaseUnmanaged">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder.EncodeBlock(System.Byte*,System.Int32,System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4FastChainEncoder.CopyDict(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder">
<summary>
LZ4 encoder using dependent blocks with high compression.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder.#ctor(K4os.Compression.LZ4.LZ4Level,System.Int32,System.Int32)">
<summary>Creates new instance of <see cref="T:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder"/></summary>
<param name="level">Compression level.</param>
<param name="blockSize">Block size.</param>
<param name="extraBlocks">Number of extra blocks.</param>
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder.ReleaseUnmanaged">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder.EncodeBlock(System.Byte*,System.Int32,System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Encoders.LZ4HighChainEncoder.CopyDict(System.Byte*,System.Int32)">
<inheritdoc />
</member>
<member name="T:K4os.Compression.LZ4.Internal.Mem">
<summary>Utility class with memory related functions.</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K1">
<summary>1 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K2">
<summary>2 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K4">
<summary>4 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K8">
<summary>8 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K16">
<summary>16 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K32">
<summary>32 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K64">
<summary>64 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K128">
<summary>128 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K256">
<summary>256 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.K512">
<summary>512 KiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.M1">
<summary>1 MiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.M4">
<summary>4 MiB</summary>
</member>
<member name="F:K4os.Compression.LZ4.Internal.Mem.Empty">
<summary>Empty byte array.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.RoundUp(System.Int32,System.Int32)">
<summary>Rounds integer value up to nearest multiple of step.</summary>
<param name="value">A value.</param>
<param name="step">A step.</param>
<returns>Value rounded up.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Copy(System.Byte*,System.Byte*,System.Int32)">
<summary>
Copies memory block for <paramref name="source"/> to <paramref name="target"/>.
Even though it is called "copy" it actually behaves like "move" which
might be potential problem, although it shouldn't as I cannot think about
any situation when "copy" invalid behaviour (forward copy of overlapping blocks)
can be a desired.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="length">Length in bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Move(System.Byte*,System.Byte*,System.Int32)">
<summary>
Copies memory block for <paramref name="source"/> to <paramref name="target"/>.
It handle "move" semantic properly handling overlapping blocks properly.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="length">Length in bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.WildCopy(System.Byte*,System.Byte*,System.Void*)">
<summary>
Copies memory block for <paramref name="source"/> to <paramref name="target"/>
up to (around) <paramref name="limit"/>.
It does not handle overlapping blocks and may copy up to 8 bytes more than expected.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="limit">The limit (in target block).</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Zero(System.Byte*,System.Int32)">
<summary>Fill block of memory with zeroes.</summary>
<param name="target">Address.</param>
<param name="length">Length.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Fill(System.Byte*,System.Byte,System.Int32)">
<summary>Fills memory block with repeating pattern of a single byte.</summary>
<param name="target">Address.</param>
<param name="value">A pattern.</param>
<param name="length">Length.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.LoopCopy(System.Byte*,System.Byte*,System.Int32)">
<summary>
Copies memory block for <paramref name="source"/> to <paramref name="target"/>.
This is proper implementation of memcpy (with all then weird behaviour for
overlapping blocks). It is slower than "Copy" but may be required if "Copy"
causes problems.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="length">Length in bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.LoopCopyBack(System.Byte*,System.Byte*,System.Int32)">
<summary>
Copies memory block backwards from <paramref name="source"/> to <paramref name="target"/>.
This is needed to implement memmove It is slower than "Move" but is needed for .NET 4.5,
which does not implement Buffer.MemoryCopy.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="length">Length in bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.LoopMove(System.Byte*,System.Byte*,System.Int32)">
<summary>
Moves memory block for <paramref name="source"/> to <paramref name="target"/>.
It handles overlapping block properly.
</summary>
<param name="target">The target block address.</param>
<param name="source">The source block address.</param>
<param name="length">Length in bytes.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Copy8(System.Byte*,System.Byte*)">
<summary>Copies exactly 8 bytes from source to target.</summary>
<param name="target">Target address.</param>
<param name="source">Source address.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Copy16(System.Byte*,System.Byte*)">
<summary>Copies exactly 16 bytes from source to target.</summary>
<param name="target">Target address.</param>
<param name="source">Source address.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Copy18(System.Byte*,System.Byte*)">
<summary>Copies exactly 18 bytes from source to target.</summary>
<param name="target">Target address.</param>
<param name="source">Source address.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Alloc(System.Int32)">
<summary>Allocated block of memory. It is NOT initialized with zeroes.</summary>
<param name="size">Size in bytes.</param>
<returns>Pointer to allocated block.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.AllocZero(System.Int32)">
<summary>Allocated block of memory and fills it with zeroes.</summary>
<param name="size">Size in bytes.</param>
<returns>Pointer to allocated block.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Free(System.Void*)">
<summary>
Free memory allocated previously with <see cref="M:K4os.Compression.LZ4.Internal.Mem.Alloc(System.Int32)"/> or <see cref="M:K4os.Compression.LZ4.Internal.Mem.AllocZero(System.Int32)"/>
</summary>
<param name="ptr"></param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Peek8(System.Void*)">
<summary>Reads exactly 1 byte from given address.</summary>
<param name="p">Address.</param>
<returns>Byte at given address.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Peek16(System.Void*)">
<summary>Reads exactly 2 bytes from given address.</summary>
<param name="p">Address.</param>
<returns>2 bytes at given address.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Peek32(System.Void*)">
<summary>Reads exactly 4 bytes from given address.</summary>
<param name="p">Address.</param>
<returns>4 bytes at given address.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Peek64(System.Void*)">
<summary>Reads exactly 8 bytes from given address.</summary>
<param name="p">Address.</param>
<returns>8 bytes at given address.</returns>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Poke8(System.Void*,System.Byte)">
<summary>Writes exactly 1 byte to given address.</summary>
<param name="p">Address.</param>
<param name="v">Value.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Poke16(System.Void*,System.UInt16)">
<summary>Writes exactly 2 bytes to given address.</summary>
<param name="p">Address.</param>
<param name="v">Value.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Poke32(System.Void*,System.UInt32)">
<summary>Writes exactly 4 bytes to given address.</summary>
<param name="p">Address.</param>
<param name="v">Value.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.Mem.Poke64(System.Void*,System.UInt64)">
<summary>Writes exactly 8 bytes to given address.</summary>
<param name="p">Address.</param>
<param name="v">Value.</param>
</member>
<member name="T:K4os.Compression.LZ4.Internal.UnmanagedResources">
<summary>
Skeleton for class with unmanaged resources.
Implements <see cref="T:System.IDisposable"/> but also handles proper release in
case <see cref="M:K4os.Compression.LZ4.Internal.UnmanagedResources.Dispose"/> was not called.
</summary>
</member>
<member name="P:K4os.Compression.LZ4.Internal.UnmanagedResources.IsDisposed">
<summary>Determines if object was already disposed.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.ThrowIfDisposed">
<summary>Throws exception is object has been disposed already. Convenience method.</summary>
<exception cref="T:System.ObjectDisposedException">Thrown if object is already disposed.</exception>
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.ReleaseUnmanaged">
<summary>Method releasing unmanaged resources.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.ReleaseManaged">
<summary>Method releasing managed resources.</summary>
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.Dispose(System.Boolean)">
<summary>
Disposed resources.
</summary>
<param name="disposing"><c>true</c> if dispose was explicitly called,
<c>false</c> if called from GC.</param>
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.Dispose">
<inheritdoc />
</member>
<member name="M:K4os.Compression.LZ4.Internal.UnmanagedResources.Finalize">
<summary>Destructor.</summary>
</member>
<member name="T:K4os.Compression.LZ4.LZ4Codec">
<summary>
Static class exposing LZ4 block compression methods.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.MaximumOutputSize(System.Int32)">
<summary>Maximum size after compression.</summary>
<param name="length">Length of input buffer.</param>
<returns>Maximum length after compression.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Encode(System.Byte*,System.Int32,System.Byte*,System.Int32,K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses data from one buffer into another.</summary>
<param name="source">Input buffer.</param>
<param name="sourceLength">Length of input buffer.</param>
<param name="target">Output buffer.</param>
<param name="targetLength">Output buffer length.</param>
<param name="level">Compression level.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Encode(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses data from one buffer into another.</summary>
<param name="source">Input buffer.</param>
<param name="target">Output buffer.</param>
<param name="level">Compression level.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Encode(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32,K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses data from one buffer into another.</summary>
<param name="source">Input buffer.</param>
<param name="sourceOffset">Input buffer offset.</param>
<param name="sourceLength">Input buffer length.</param>
<param name="target">Output buffer.</param>
<param name="targetOffset">Output buffer offset.</param>
<param name="targetLength">Output buffer length.</param>
<param name="level">Compression level.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Decode(System.Byte*,System.Int32,System.Byte*,System.Int32)">
<summary>Decompresses data from given buffer.</summary>
<param name="source">Input buffer.</param>
<param name="sourceLength">Input buffer length.</param>
<param name="target">Output buffer.</param>
<param name="targetLength">Output buffer length.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Decode(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
<summary>Decompresses data from given buffer.</summary>
<param name="source">Input buffer.</param>
<param name="target">Output buffer.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Codec.Decode(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32)">
<summary>Decompresses data from given buffer.</summary>
<param name="source">Input buffer.</param>
<param name="sourceOffset">Input buffer offset.</param>
<param name="sourceLength">Input buffer length.</param>
<param name="target">Output buffer.</param>
<param name="targetOffset">Output buffer offset.</param>
<param name="targetLength">Output buffer length.</param>
<returns>Number of bytes written, or negative value if output buffer is too small.</returns>
</member>
<member name="T:K4os.Compression.LZ4.LZ4Level">
<summary>Compression level.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L00_FAST">
<summary>Fast compression.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L03_HC">
<summary>High compression, level 3.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L04_HC">
<summary>High compression, level 4.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L05_HC">
<summary>High compression, level 5.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L06_HC">
<summary>High compression, level 6.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L07_HC">
<summary>High compression, level 7.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L08_HC">
<summary>High compression, level 8.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L09_HC">
<summary>High compression, level 9.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L10_OPT">
<summary>Optimal compression, level 10.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L11_OPT">
<summary>Optimal compression, level 11.</summary>
</member>
<member name="F:K4os.Compression.LZ4.LZ4Level.L12_MAX">
<summary>Maximum compression, level 12.</summary>
</member>
<member name="T:K4os.Compression.LZ4.LZ4Pickler">
<summary>
Pickling support with LZ4 compression.
</summary>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Pickle(System.Byte[],K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses input buffer into self-contained package.</summary>
<param name="source">Input buffer.</param>
<param name="level">Compression level.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Pickle(System.Byte[],System.Int32,System.Int32,K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses input buffer into self-contained package.</summary>
<param name="source">Input buffer.</param>
<param name="sourceOffset">Input buffer offset.</param>
<param name="sourceLength">Input buffer length.</param>
<param name="level">Compression level.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Pickle(System.ReadOnlySpan{System.Byte},K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses input buffer into self-contained package.</summary>
<param name="source">Input buffer.</param>
<param name="level">Compression level.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Pickle(System.Byte*,System.Int32,K4os.Compression.LZ4.LZ4Level)">
<summary>Compresses input buffer into self-contained package.</summary>
<param name="source">Input buffer.</param>
<param name="sourceLength">Length of input data.</param>
<param name="level">Compression level.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Unpickle(System.Byte[])">
<summary>Decompresses previously pickled buffer (see: <see cref="T:K4os.Compression.LZ4.LZ4Pickler"/>.</summary>
<param name="source">Input buffer.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Unpickle(System.Byte[],System.Int32,System.Int32)">
<summary>Decompresses previously pickled buffer (see: <see cref="T:K4os.Compression.LZ4.LZ4Pickler"/>.</summary>
<param name="source">Input buffer.</param>
<param name="sourceOffset">Input buffer offset.</param>
<param name="sourceLength">Input buffer length.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Unpickle(System.ReadOnlySpan{System.Byte})">
<summary>Decompresses previously pickled buffer (see: <see cref="T:K4os.Compression.LZ4.LZ4Pickler"/>.</summary>
<param name="source">Input buffer.</param>
<returns>Output buffer.</returns>
</member>
<member name="M:K4os.Compression.LZ4.LZ4Pickler.Unpickle(System.Byte*,System.Int32)">
<summary>Decompresses previously pickled buffer (see: <see cref="T:K4os.Compression.LZ4.LZ4Pickler"/>.</summary>
<param name="source">Input buffer.</param>
<param name="sourceLength">Input buffer length.</param>
<returns>Output buffer.</returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,163 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>K4os.Hash.xxHash</name>
</assembly>
<members>
<member name="T:K4os.Hash.xxHash.HashAlgorithmAdapter">
<summary>
Adapter implementing <see cref="T:System.Security.Cryptography.HashAlgorithm"/>
</summary>
</member>
<member name="M:K4os.Hash.xxHash.HashAlgorithmAdapter.#ctor(System.Int32,System.Action,System.Action{System.Byte[],System.Int32,System.Int32},System.Func{System.Byte[]})">
<summary>
Creates new <see cref="T:K4os.Hash.xxHash.HashAlgorithmAdapter"/>.
</summary>
<param name="hashSize">Hash size (in bytes)</param>
<param name="reset">Reset function.</param>
<param name="update">Update function.</param>
<param name="digest">Digest function.</param>
</member>
<member name="P:K4os.Hash.xxHash.HashAlgorithmAdapter.HashSize">
<inheritdoc />
</member>
<member name="P:K4os.Hash.xxHash.HashAlgorithmAdapter.Hash">
<inheritdoc />
</member>
<member name="M:K4os.Hash.xxHash.HashAlgorithmAdapter.HashCore(System.Byte[],System.Int32,System.Int32)">
<inheritdoc />
</member>
<member name="M:K4os.Hash.xxHash.HashAlgorithmAdapter.HashFinal">
<inheritdoc />
</member>
<member name="M:K4os.Hash.xxHash.HashAlgorithmAdapter.Initialize">
<inheritdoc />
</member>
<member name="T:K4os.Hash.xxHash.XXH">
<summary>
Base class for both <see cref="T:K4os.Hash.xxHash.XXH32"/> and <see cref="T:K4os.Hash.xxHash.XXH64"/>. Do not use directly.
</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH.#ctor">
<summary>Protected constructor to prevent instantiation.</summary>
</member>
<member name="T:K4os.Hash.xxHash.XXH32">
<summary>
xxHash 32-bit.
</summary>
</member>
<member name="F:K4os.Hash.xxHash.XXH32.EmptyHash">
<summary>Hash of empty buffer.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.DigestOf(System.Void*,System.Int32)">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="length">Length of buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.DigestOf(System.ReadOnlySpan{System.Byte})">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.DigestOf(System.Byte[],System.Int32,System.Int32)">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="offset">Starting offset.</param>
<param name="length">Length of buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.#ctor">
<summary>Creates xxHash instance.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.Reset">
<summary>Resets hash calculation.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.Update(System.Byte*,System.Int32)">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="length">Length of buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.Update(System.ReadOnlySpan{System.Byte})">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.Update(System.Byte[],System.Int32,System.Int32)">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="offset">Starting offset.</param>
<param name="length">Length of buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.Digest">
<summary>Hash so far.</summary>
<returns>Hash so far.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.DigestBytes">
<summary>Hash so far, as byte array.</summary>
<returns>Hash so far.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH32.AsHashAlgorithm">
<summary>Converts this class to <see cref="T:System.Security.Cryptography.HashAlgorithm"/></summary>
<returns><see cref="T:System.Security.Cryptography.HashAlgorithm"/></returns>
</member>
<member name="T:K4os.Hash.xxHash.XXH64">
<summary>
xxHash 64-bit.
</summary>
</member>
<member name="F:K4os.Hash.xxHash.XXH64.EmptyHash">
<summary>Hash of empty buffer.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.DigestOf(System.Void*,System.Int32)">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="length">Length of buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.DigestOf(System.ReadOnlySpan{System.Byte})">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.DigestOf(System.Byte[],System.Int32,System.Int32)">
<summary>Hash of provided buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="offset">Starting offset.</param>
<param name="length">Length of buffer.</param>
<returns>Digest.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.#ctor">
<summary>Creates xxHash instance.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.Reset">
<summary>Resets hash calculation.</summary>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.Update(System.Byte*,System.Int32)">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="length">Length of buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.Update(System.ReadOnlySpan{System.Byte})">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.Update(System.Byte[],System.Int32,System.Int32)">
<summary>Updates the has using given buffer.</summary>
<param name="bytes">Buffer.</param>
<param name="offset">Starting offset.</param>
<param name="length">Length of buffer.</param>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.Digest">
<summary>Hash so far.</summary>
<returns>Hash so far.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.DigestBytes">
<summary>Hash so far, as byte array.</summary>
<returns>Hash so far.</returns>
</member>
<member name="M:K4os.Hash.xxHash.XXH64.AsHashAlgorithm">
<summary>Converts this class to <see cref="T:System.Security.Cryptography.HashAlgorithm"/></summary>
<returns><see cref="T:System.Security.Cryptography.HashAlgorithm"/></returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,801 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>LiveCharts.WinForms</name>
</assembly>
<members>
<member name="T:LiveCharts.WinForms.AngularGauge">
<summary>
</summary>
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
</member>
<member name="F:LiveCharts.WinForms.AngularGauge.WpfBase">
<summary>
The WPF base
</summary>
</member>
<member name="M:LiveCharts.WinForms.AngularGauge.#ctor">
<summary>
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.AngularGauge"/> class.
</summary>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.Base">
<summary>
Gets the base.
</summary>
<value>
The base.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.Wedge">
<summary>
Gets or sets the wedge.
</summary>
<value>
The wedge.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.TickStep">
<summary>
Gets or sets the tick step.
</summary>
<value>
The tick step.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsStep">
<summary>
Gets or sets the labels step.
</summary>
<value>
The labels step.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.FromValue">
<summary>
Gets or sets from value.
</summary>
<value>
From value.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.ToValue">
<summary>
Gets or sets to value.
</summary>
<value>
To value.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.Sections">
<summary>
Gets or sets the sections.
</summary>
<value>
The sections.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.Value">
<summary>
Gets or sets the value.
</summary>
<value>
The value.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.LabelFormatter">
<summary>
Gets or sets the label formatter.
</summary>
<value>
The label formatter.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.DisableAnimations">
<summary>
Gets or sets a value indicating whether [disable animations].
</summary>
<value>
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.AnimationsSpeed">
<summary>
Gets or sets the animations speed.
</summary>
<value>
The animations speed.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.TicksForeground">
<summary>
Gets or sets the ticks foreground.
</summary>
<value>
The ticks foreground.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.SectionsInnerRadius">
<summary>
Gets or sets the sections inner radius.
</summary>
<value>
The sections inner radius.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.NeedleFill">
<summary>
Gets or sets the needle fill.
</summary>
<value>
The needle fill.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.LabelsEffect">
<summary>
Gets or sets the labels effect.
</summary>
<value>
The labels effect.
</value>
</member>
<member name="P:LiveCharts.WinForms.AngularGauge.TicksStrokeThickness">
<summary>
Gets or sets the ticks stroke thickness.
</summary>
<value>
The ticks stroke thickness.
</value>
</member>
<member name="T:LiveCharts.WinForms.CartesianChart">
<summary>
</summary>
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
</member>
<member name="F:LiveCharts.WinForms.CartesianChart.WpfBase">
<summary>
The WPF base
</summary>
</member>
<member name="M:LiveCharts.WinForms.CartesianChart.#ctor">
<summary>
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.CartesianChart"/> class.
</summary>
</member>
<member name="M:LiveCharts.WinForms.CartesianChart.Update(System.Boolean,System.Boolean)">
<summary>
Updates the specified restart view.
</summary>
<param name="restartView">if set to <c>true</c> [restart view].</param>
<param name="force">if set to <c>true</c> [force].</param>
</member>
<member name="E:LiveCharts.WinForms.CartesianChart.DataClick">
<summary>
Occurs when the users clicks any point in the chart
</summary>
</member>
<member name="E:LiveCharts.WinForms.CartesianChart.DataHover">
<summary>
Occurs when the users hovers over any point in the chart
</summary>
</member>
<member name="E:LiveCharts.WinForms.CartesianChart.UpdaterTick">
<summary>
Occurs every time the chart updates
</summary>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Base">
<summary>
Gets the base.
</summary>
<value>
The base.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.AxisY">
<summary>
Gets or sets the axis y.
</summary>
<value>
The axis y.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.AxisX">
<summary>
Gets or sets the axis x.
</summary>
<value>
The axis x.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.DefaultLegend">
<summary>
Gets or sets the default legend.
</summary>
<value>
The default legend.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Zoom">
<summary>
Gets or sets the zoom.
</summary>
<value>
The zoom.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Pan">
<summary>
Gets or sets the pan.
</summary>
<value>
The pan.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.LegendLocation">
<summary>
Gets or sets the legend location.
</summary>
<value>
The legend location.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Series">
<summary>
Gets or sets the series.
</summary>
<value>
The series.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.AnimationsSpeed">
<summary>
Gets or sets the animations speed.
</summary>
<value>
The animations speed.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.DisableAnimations">
<summary>
Gets or sets a value indicating whether [disable animations].
</summary>
<value>
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.DataTooltip">
<summary>
Gets or sets the data tooltip.
</summary>
<value>
The data tooltip.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Hoverable">
<summary>
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.CartesianChart"/> is hoverable.
</summary>
<value>
<c>true</c> if hoverable; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollMode">
<summary>
Gets or sets the scroll mode.
</summary>
<value>
The scroll mode.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalFrom">
<summary>
Gets or sets the scroll horizontal from.
</summary>
<value>
The scroll horizontal from.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollHorizontalTo">
<summary>
Gets or sets the scroll horizontal to.
</summary>
<value>
The scroll horizontal to.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalFrom">
<summary>
Gets or sets the scroll vertical from.
</summary>
<value>
The scroll vertical from.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollVerticalTo">
<summary>
Gets or sets the scroll vertical to.
</summary>
<value>
The scroll vertical to.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.ScrollBarFill">
<summary>
Gets or sets the scroll bar fill.
</summary>
<value>
The scroll bar fill.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.Background">
<summary>
Gets or sets the background.
</summary>
<value>
The background.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.VisualElements">
<summary>
Gets or sets the visual elements.
</summary>
<value>
The visual elements.
</value>
</member>
<member name="P:LiveCharts.WinForms.CartesianChart.UpdaterState">
<summary>
Gets or sets the state of the updater.
</summary>
<value>
The state of the updater.
</value>
</member>
<member name="T:LiveCharts.WinForms.SolidGauge">
<summary>
</summary>
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
</member>
<member name="F:LiveCharts.WinForms.SolidGauge.WpfBase">
<summary>
The WPF base
</summary>
</member>
<member name="M:LiveCharts.WinForms.SolidGauge.#ctor">
<summary>
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.SolidGauge"/> class.
</summary>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.Base">
<summary>
Gets the base.
</summary>
<value>
The base.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.Uses360Mode">
<summary>
Gets or sets a value indicating whether [uses360 mode].
</summary>
<value>
<c>true</c> if [uses360 mode]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.DisableAnimations">
<summary>
Gets or sets a value indicating whether [disable animations].
</summary>
<value>
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.From">
<summary>
Gets or sets from.
</summary>
<value>
From.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.To">
<summary>
Gets or sets to.
</summary>
<value>
To.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.Value">
<summary>
Gets or sets the value.
</summary>
<value>
The value.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.InnerRadius">
<summary>
Gets or sets the inner radius.
</summary>
<value>
The inner radius.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.Stroke">
<summary>
Gets or sets the stroke.
</summary>
<value>
The stroke.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.StrokeThickness">
<summary>
Gets or sets the stroke thickness.
</summary>
<value>
The stroke thickness.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.ToColor">
<summary>
Gets or sets to color.
</summary>
<value>
To color.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FromColor">
<summary>
Gets or sets from color.
</summary>
<value>
From color.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.GaugeBackground">
<summary>
Gets or sets the gauge background.
</summary>
<value>
The gauge background.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.AnimationsSpeed">
<summary>
Gets or sets the animations speed.
</summary>
<value>
The animations speed.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.LabelFormatter">
<summary>
Gets or sets the label formatter.
</summary>
<value>
The label formatter.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.HighFontSize">
<summary>
Gets or sets the size of the high font.
</summary>
<value>
The size of the high font.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FontSize">
<summary>
Gets or sets the size of the font.
</summary>
<value>
The size of the font.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FontFamily">
<summary>
Gets or sets the font family.
</summary>
<value>
The font family.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FontWeight">
<summary>
Gets or sets the font weight.
</summary>
<value>
The font weight.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FontStyle">
<summary>
Gets or sets the font style.
</summary>
<value>
The font style.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.FontStretch">
<summary>
Gets or sets the font stretch.
</summary>
<value>
The font stretch.
</value>
</member>
<member name="P:LiveCharts.WinForms.SolidGauge.ForeGround">
<summary>
Gets or sets the fore ground.
</summary>
<value>
The fore ground.
</value>
</member>
<member name="T:LiveCharts.WinForms.GeoMap">
<summary>
</summary>
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
</member>
<member name="F:LiveCharts.WinForms.GeoMap.WpfBase">
<summary>
The WPF base
</summary>
</member>
<member name="M:LiveCharts.WinForms.GeoMap.#ctor">
<summary>
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.GeoMap"/> class.
</summary>
</member>
<member name="E:LiveCharts.WinForms.GeoMap.LandClick">
<summary>
Occurs when [land click].
</summary>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.Base">
<summary>
Gets the base.
</summary>
<value>
The base.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.LanguagePack">
<summary>
Gets or sets the language pack.
</summary>
<value>
The language pack.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.DefaultLandFill">
<summary>
Gets or sets the default land fill.
</summary>
<value>
The default land fill.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.LandStrokeThickness">
<summary>
Gets or sets the land stroke thickness.
</summary>
<value>
The land stroke thickness.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.LandStroke">
<summary>
Gets or sets the land stroke.
</summary>
<value>
The land stroke.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.DisableAnimations">
<summary>
Gets or sets a value indicating whether [disable animations].
</summary>
<value>
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.AnimationsSpeed">
<summary>
Gets or sets the animations speed.
</summary>
<value>
The animations speed.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.Hoverable">
<summary>
Gets or sets a value indicating whether this <see cref="T:LiveCharts.WinForms.GeoMap"/> is hoverable.
</summary>
<value>
<c>true</c> if hoverable; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.HeatMap">
<summary>
Gets or sets the heat map.
</summary>
<value>
The heat map.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.GradientStopCollection">
<summary>
Gets or sets the gradient stop collection.
</summary>
<value>
The gradient stop collection.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.Source">
<summary>
Gets or sets the source.
</summary>
<value>
The source.
</value>
</member>
<member name="P:LiveCharts.WinForms.GeoMap.EnableZoomingAndPanning">
<summary>
Gets or sets a value indicating whether [enable zooming and panning].
</summary>
<value>
<c>true</c> if [enable zooming and panning]; otherwise, <c>false</c>.
</value>
</member>
<member name="T:LiveCharts.WinForms.PieChart">
<summary>
</summary>
<seealso cref="T:System.Windows.Forms.Integration.ElementHost"/>
</member>
<member name="F:LiveCharts.WinForms.PieChart.WpfBase">
<summary>
The WPF base
</summary>
</member>
<member name="M:LiveCharts.WinForms.PieChart.#ctor">
<summary>
Initializes a new instance of the <see cref="T:LiveCharts.WinForms.PieChart"/> class.
</summary>
</member>
<member name="M:LiveCharts.WinForms.PieChart.Update(System.Boolean,System.Boolean)">
<summary>
Updates the specified restart view.
</summary>
<param name="restartView">if set to <c>true</c> [restart view].</param>
<param name="force">if set to <c>true</c> [force].</param>
</member>
<member name="E:LiveCharts.WinForms.PieChart.DataClick">
<summary>
Occurs when the users clicks any point in the chart
</summary>
</member>
<member name="E:LiveCharts.WinForms.PieChart.DataHover">
<summary>
Occurs when the users hovers over any point in the chart
</summary>
</member>
<member name="E:LiveCharts.WinForms.PieChart.UpdaterTick">
<summary>
Occurs every time the chart updates
</summary>
</member>
<member name="P:LiveCharts.WinForms.PieChart.AxisY">
<summary>
Gets or sets the axis y.
</summary>
<value>
The axis y.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.AxisX">
<summary>
Gets or sets the axis x.
</summary>
<value>
The axis x.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.DefaultLegend">
<summary>
Gets or sets the default legend.
</summary>
<value>
The default legend.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.Zoom">
<summary>
Gets or sets the zoom.
</summary>
<value>
The zoom.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.LegendLocation">
<summary>
Gets or sets the legend location.
</summary>
<value>
The legend location.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.Series">
<summary>
Gets or sets the series.
</summary>
<value>
The series.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.AnimationsSpeed">
<summary>
Gets or sets the animations speed.
</summary>
<value>
The animations speed.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.DisableAnimations">
<summary>
Gets or sets a value indicating whether [disable animations].
</summary>
<value>
<c>true</c> if [disable animations]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.DataTooltip">
<summary>
Gets or sets the data tooltip.
</summary>
<value>
The data tooltip.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.InnerRadius">
<summary>
Gets or sets the inner radius.
</summary>
<value>
The inner radius.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.StartingRotationAngle">
<summary>
Gets or sets the starting rotation angle.
</summary>
<value>
The starting rotation angle.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.UpdaterState">
<summary>
Gets or sets the state of the updater.
</summary>
<value>
The state of the updater.
</value>
</member>
<member name="P:LiveCharts.WinForms.PieChart.HoverPushOut">
<summary>
Gets or sets the units that a slice is pushed out when a user moves the mouse over data point.
</summary>
<value>
The hover push out.
</value>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup></configuration>

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="Maser.Feanor.Biz.Properties.Settings.FeanorConnStr" connectionString="Data Source=.\FEANOR; Initial Catalog = FEANOR; Persist Security Info=True; User ID = sa; Password=resam; connection timeout=15" providerName="System.Data.SqlClient"/>
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/></startup></configuration>

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,187 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>OpenTK.GLControl</name>
</assembly>
<members>
<member name="T:OpenTK.GLControl">
<summary>
OpenGL-aware WinForms control.
The WinForms designer will always call the default constructor.
Inherit from this class and call one of its specialized constructors
to enable antialiasing or custom <see cref="P:OpenTK.GLControl.GraphicsMode"/>s.
</summary>
</member>
<member name="F:OpenTK.GLControl.components">
<summary>
Required designer variable.
</summary>
</member>
<member name="M:OpenTK.GLControl.Dispose(System.Boolean)">
<summary>
Clean up any resources being used.
</summary>
<param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
</member>
<member name="M:OpenTK.GLControl.InitializeComponent">
<summary>
Required method for Designer support - do not modify
the contents of this method with the code editor.
</summary>
</member>
<member name="M:OpenTK.GLControl.#ctor">
<summary>
Constructs a new instance.
</summary>
</member>
<member name="M:OpenTK.GLControl.#ctor(OpenTK.Graphics.GraphicsMode)">
<summary>
Constructs a new instance with the specified GraphicsMode.
</summary>
<param name="mode">The OpenTK.Graphics.GraphicsMode of the control.</param>
</member>
<member name="M:OpenTK.GLControl.#ctor(OpenTK.Graphics.GraphicsMode,System.Int32,System.Int32,OpenTK.Graphics.GraphicsContextFlags)">
<summary>
Constructs a new instance with the specified GraphicsMode.
</summary>
<param name="mode">The OpenTK.Graphics.GraphicsMode of the control.</param>
<param name="major">The major version for the OpenGL GraphicsContext.</param>
<param name="minor">The minor version for the OpenGL GraphicsContext.</param>
<param name="flags">The GraphicsContextFlags for the OpenGL GraphicsContext.</param>
</member>
<member name="P:OpenTK.GLControl.HasValidContext">
<summary>
Gets a value indicating whether [failed to create OpenGL context].
So that the application stays running and is able to recover.
</summary>
<value>
<c>true</c> if [failed create context]; otherwise, <c>false</c>.
</value>
</member>
<member name="P:OpenTK.GLControl.CreateParams">
<summary>
Gets the <c>CreateParams</c> instance for this <c>GLControl</c>
</summary>
</member>
<member name="M:OpenTK.GLControl.OnHandleCreated(System.EventArgs)">
<summary>Raises the HandleCreated event.</summary>
<param name="e">Not used.</param>
</member>
<member name="M:OpenTK.GLControl.OnHandleDestroyed(System.EventArgs)">
<summary>Raises the HandleDestroyed event.</summary>
<param name="e">Not used.</param>
</member>
<member name="M:OpenTK.GLControl.OnPaint(System.Windows.Forms.PaintEventArgs)">
<summary>
Raises the System.Windows.Forms.Control.Paint event.
</summary>
<param name="e">A System.Windows.Forms.PaintEventArgs that contains the event data.</param>
</member>
<member name="M:OpenTK.GLControl.OnResize(System.EventArgs)">
<summary>
Raises the Resize event.
Note: this method may be called before the OpenGL context is ready.
Check that IsHandleCreated is true before using any OpenGL methods.
</summary>
<param name="e">A System.EventArgs that contains the event data.</param>
</member>
<member name="T:OpenTK.GLControl.DelayUpdate">
<summary>
Needed to delay the invoke on OS X. Also needed because OpenTK is .NET 2, otherwise I'd use an inline Action.
</summary>
</member>
<member name="M:OpenTK.GLControl.PerformContextUpdate">
<summary>
Execute the delayed context update
</summary>
</member>
<member name="M:OpenTK.GLControl.OnParentChanged(System.EventArgs)">
<summary>
Raises the ParentChanged event.
</summary>
<param name="e">A System.EventArgs that contains the event data.</param>
</member>
<member name="M:OpenTK.GLControl.SwapBuffers">
<summary>
Swaps the front and back buffers, presenting the rendered scene to the screen.
This method will have no effect on a single-buffered <c>GraphicsMode</c>.
</summary>
</member>
<member name="M:OpenTK.GLControl.MakeCurrent">
<summary>
<para>
Makes <see cref="P:OpenTK.GLControl.Context"/> current in the calling thread.
All OpenGL commands issued are hereafter interpreted by this context.
</para>
<para>
When using multiple <c>GLControl</c>s, calling <c>MakeCurrent</c> on
one control will make all other controls non-current in the calling thread.
</para>
<seealso cref="P:OpenTK.GLControl.Context"/>
<para>
A <c>GLControl</c> can only be current in one thread at a time.
To make a control non-current, call <c>GLControl.Context.MakeCurrent(null)</c>.
</para>
</summary>
</member>
<member name="P:OpenTK.GLControl.IsIdle">
<summary>
Gets a value indicating whether the current thread contains pending system messages.
</summary>
</member>
<member name="P:OpenTK.GLControl.Context">
<summary>
Gets the <c>IGraphicsContext</c> instance that is associated with the <c>GLControl</c>.
The associated <c>IGraphicsContext</c> is updated whenever the <c>GLControl</c>
handle is created or recreated.
When using multiple <c>GLControl</c>s, ensure that <c>Context</c>
is current before performing any OpenGL operations.
<seealso cref="M:OpenTK.GLControl.MakeCurrent"/>
</summary>
</member>
<member name="P:OpenTK.GLControl.AspectRatio">
<summary>
Gets the aspect ratio of this GLControl.
</summary>
</member>
<member name="P:OpenTK.GLControl.VSync">
<summary>
Gets or sets a value indicating whether vsync is active for this <c>GLControl</c>.
When using multiple <c>GLControl</c>s, ensure that <see cref="P:OpenTK.GLControl.Context"/>
is current before accessing this property.
<seealso cref="P:OpenTK.GLControl.Context"/>
<seealso cref="M:OpenTK.GLControl.MakeCurrent"/>
</summary>
</member>
<member name="P:OpenTK.GLControl.GraphicsMode">
<summary>
Gets the <c>GraphicsMode</c> of the <c>IGraphicsContext</c> associated with
this <c>GLControl</c>. If you wish to change <c>GraphicsMode</c>, you must
destroy and recreate the <c>GLControl</c>.
</summary>
</member>
<member name="P:OpenTK.GLControl.WindowInfo">
<summary>
Gets the <see cref="T:OpenTK.Platform.IWindowInfo"/> for this instance.
</summary>
</member>
<member name="M:OpenTK.Platform.MacOS.Agl.aglChoosePixelFormat(System.IntPtr,System.Int32,System.Int32[])">
<summary>
Use this overload only with IntPtr.Zero for the first argument.
</summary>
<param name="gdevs">
</param>
<param name="ndev">
</param>
<param name="attribs">
</param>
<returns>
</returns>
</member>
<member name="T:OpenTK.Platform.MacOS.AglContext">
<summary>
AGL context implementation for WinForms compatibility.
</summary>
</member>
</members>
</doc>

Binary file not shown.

579877
Feanor ServerCopy/OpenTK.xml Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,766 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>OxyPlot.WindowsForms</name>
</assembly>
<members>
<member name="T:OxyPlot.WindowsForms.DrawingConverterExtensions">
<summary>
Extension method used to convert to/from Windows/Windows.Media classes.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.DistanceTo(System.Drawing.Point,System.Drawing.Point)">
<summary>
Calculate the distance between two points.
</summary>
<param name="p1">The first point.</param>
<param name="p2">The second point.</param>
<returns>The distance.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToBrush(OxyPlot.OxyColor)">
<summary>
Converts a color to a Brush.
</summary>
<param name="c">The color.</param>
<returns>A SolidColorBrush.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToColor(OxyPlot.OxyColor)">
<summary>
Converts an OxyColor to a Color.
</summary>
<param name="c">The color.</param>
<returns>A Color.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToHorizontalTextAlign(OxyPlot.HorizontalAlignment)">
<summary>
Converts a HorizontalAlignment to a HorizontalTextAlign.
</summary>
<param name="alignment">The alignment.</param>
<returns>A HorizontalTextAlign.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToOxyColor(System.Drawing.Color)">
<summary>
Converts a <see cref="T:System.Drawing.Color" /> to an <see cref="T:OxyPlot.OxyColor" />.
</summary>
<param name="color">The color to convert.</param>
<returns>An <see cref="T:OxyPlot.OxyColor" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToOxyColor(System.Drawing.Brush)">
<summary>
Converts a <see cref="T:System.Drawing.Brush" /> to an <see cref="T:OxyPlot.OxyColor" />.
</summary>
<param name="brush">The brush to convert.</param>
<returns>An <see cref="T:OxyPlot.OxyColor" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToPoint(OxyPlot.ScreenPoint,System.Boolean)">
<summary>
Converts a Thickness to an OxyThickness.
</summary>
<param name="pt">The screen point.</param>
<param name="aliased">use pixel alignment conversion if set to <c>true</c>.</param>
<returns>An OxyPlot thickness.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToRect(OxyPlot.OxyRect,System.Boolean)">
<summary>
Converts an <see cref="T:OxyPlot.OxyRect" /> to a <see cref="T:System.Drawing.Rectangle" />.
</summary>
<param name="r">The rectangle.</param>
<param name="aliased">use pixel alignment if set to <c>true</c>.</param>
<returns>A <see cref="T:System.Drawing.Rectangle" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToScreenPoint(System.Drawing.Point)">
<summary>
Converts a point to a ScreenPoint.
</summary>
<param name="pt">The point.</param>
<returns>A screen point.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.DrawingConverterExtensions.ToScreenPointArray(System.Drawing.Point[])">
<summary>
Converts a Point array to a ScreenPoint array.
</summary>
<param name="points">The points.</param>
<returns>A ScreenPoint array.</returns>
</member>
<member name="T:OxyPlot.WindowsForms.ExporterExtensions">
<summary>
Provides extension methods for exporters.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.ExporterExtensions.ExportToFile(OxyPlot.IExporter,OxyPlot.IPlotModel,System.String)">
<summary>
Exports the specified <see cref="T:OxyPlot.PlotModel" /> to a file.
</summary>
<param name="exporter">The exporter.</param>
<param name="model">The model to export.</param>
<param name="path">The path to the file.</param>
</member>
<member name="T:OxyPlot.WindowsForms.GraphicsPenDescription">
<summary>
Describes a GDI+ Pen.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.#ctor(OxyPlot.OxyColor,System.Double,System.Double[],OxyPlot.LineJoin)">
<summary>
Initializes a new instance of the <see cref="T:OxyPlot.WindowsForms.GraphicsPenDescription" /> class.
</summary>
<param name="color">The color.</param>
<param name="thickness">The thickness.</param>
<param name="dashArray">The dash array.</param>
<param name="lineJoin">The line join.</param>
</member>
<member name="P:OxyPlot.WindowsForms.GraphicsPenDescription.Color">
<summary>
Gets the color of the pen.
</summary>
<value>The color.</value>
</member>
<member name="P:OxyPlot.WindowsForms.GraphicsPenDescription.Thickness">
<summary>
Gets the line thickness.
</summary>
<value>The line thickness.</value>
</member>
<member name="P:OxyPlot.WindowsForms.GraphicsPenDescription.DashArray">
<summary>
Gets the dash array.
</summary>
<value>The dash array.</value>
</member>
<member name="P:OxyPlot.WindowsForms.GraphicsPenDescription.LineJoin">
<summary>
Gets the line join type.
</summary>
<value>The line join type.</value>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsPenDescription.cachedHashCode">
<summary>
The HashCode of the <see cref="T:OxyPlot.WindowsForms.GraphicsPenDescription" /> instance, as computed in the constructor.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.Equals(System.Object)">
<summary>
Determines whether the specified <see cref="T:System.Object" /> is equal to this instance.
</summary>
<param name="obj">The <see cref="T:System.Object" /> to compare with this instance.</param>
<returns><c>true</c> if the specified <see cref="T:System.Object" /> is equal to this instance; otherwise, <c>false</c> .</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.GetHashCode">
<summary>
Returns a hash code for this instance.
</summary>
<returns>A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.ComputeHashCode">
<summary>
Computes the HashCode for the instance.
</summary>
<returns>The HashCode for the instance.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.ComputeDashArrayHashCode(System.Double[])">
<summary>
Computes a HashCode for the given array based on every element in the array.
</summary>
<param name="array">The array</param>
<returns>A HashCode</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsPenDescription.DashArraysEquals(System.Double[],System.Double[])">
<summary>
Determines whether two arrays are equivalent.
</summary>
<param name="l">The left array.</param>
<param name="r">The right array.</param>
<returns><c>true</c> if the arrays are the same array, are both null, or have the same elements; otherwise <c>false</c></returns>
</member>
<member name="T:OxyPlot.WindowsForms.GraphicsRenderContext">
<summary>
The graphics render context.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.FontsizeFactor">
<summary>
The font size factor.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.imagesInUse">
<summary>
The images in use
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.imageCache">
<summary>
The image cache
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.brushes">
<summary>
The brush cache.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.pens">
<summary>
The pen cache.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.stringFormat">
<summary>
The string format.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.GraphicsRenderContext.g">
<summary>
The GDI+ drawing surface.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.#ctor(System.Drawing.Graphics)">
<summary>
Initializes a new instance of the <see cref="T:OxyPlot.WindowsForms.GraphicsRenderContext" /> class.
</summary>
<param name="graphics">The drawing surface.</param>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.SetGraphicsTarget(System.Drawing.Graphics)">
<summary>
Sets the graphics target.
</summary>
<param name="graphics">The graphics surface.</param>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawEllipse(OxyPlot.OxyRect,OxyPlot.OxyColor,OxyPlot.OxyColor,System.Double,OxyPlot.EdgeRenderingMode)">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawLine(System.Collections.Generic.IList{OxyPlot.ScreenPoint},OxyPlot.OxyColor,System.Double,OxyPlot.EdgeRenderingMode,System.Double[],OxyPlot.LineJoin)">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawPolygon(System.Collections.Generic.IList{OxyPlot.ScreenPoint},OxyPlot.OxyColor,OxyPlot.OxyColor,System.Double,OxyPlot.EdgeRenderingMode,System.Double[],OxyPlot.LineJoin)">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawRectangle(OxyPlot.OxyRect,OxyPlot.OxyColor,OxyPlot.OxyColor,System.Double,OxyPlot.EdgeRenderingMode)">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawText(OxyPlot.ScreenPoint,System.String,OxyPlot.OxyColor,System.String,System.Double,System.Double,System.Double,OxyPlot.HorizontalAlignment,OxyPlot.VerticalAlignment,System.Nullable{OxyPlot.OxySize})">
<summary>
Draws the text.
</summary>
<param name="p">The p.</param>
<param name="text">The text.</param>
<param name="fill">The fill color.</param>
<param name="fontFamily">The font family.</param>
<param name="fontSize">Size of the font.</param>
<param name="fontWeight">The font weight.</param>
<param name="rotate">The rotation angle.</param>
<param name="halign">The horizontal alignment.</param>
<param name="valign">The vertical alignment.</param>
<param name="maxSize">The maximum size of the text.</param>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.MeasureText(System.String,System.String,System.Double,System.Double)">
<summary>
Measures the text.
</summary>
<param name="text">The text.</param>
<param name="fontFamily">The font family.</param>
<param name="fontSize">Size of the font.</param>
<param name="fontWeight">The font weight.</param>
<returns>The text size.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.CleanUp">
<summary>
Cleans up resources not in use.
</summary>
<remarks>This method is called at the end of each rendering.</remarks>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.DrawImage(OxyPlot.OxyImage,System.Double,System.Double,System.Double,System.Double,System.Double,System.Double,System.Double,System.Double,System.Double,System.Boolean)">
<summary>
Draws the image.
</summary>
<param name="source">The source.</param>
<param name="srcX">The source executable.</param>
<param name="srcY">The source asynchronous.</param>
<param name="srcWidth">Width of the source.</param>
<param name="srcHeight">Height of the source.</param>
<param name="x">The executable.</param>
<param name="y">The asynchronous.</param>
<param name="w">The forward.</param>
<param name="h">The authentication.</param>
<param name="opacity">The opacity.</param>
<param name="interpolate">if set to <c>true</c> [interpolate].</param>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.SetClip(OxyPlot.OxyRect)">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.ResetClip">
<inheritdoc/>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.CreateFont(System.String,System.Double,System.Drawing.FontStyle)">
<summary>
Creates a font.
</summary>
<param name="fontFamily">The font family.</param>
<param name="fontSize">Size of the font.</param>
<param name="fontStyle">The font style.</param>
<returns>A font</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.Ceiling(System.Drawing.SizeF)">
<summary>
Returns the ceiling of the given <see cref="T:System.Drawing.SizeF"/> as a <see cref="T:System.Drawing.SizeF"/>.
</summary>
<param name="size">The size.</param>
<returns>A <see cref="T:System.Drawing.SizeF"/>.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.GetImage(OxyPlot.OxyImage)">
<summary>
Loads the image from the specified source.
</summary>
<param name="source">The image source.</param>
<returns>A <see cref="T:System.Drawing.Image" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.GetCachedBrush(OxyPlot.OxyColor)">
<summary>
Gets the cached brush.
</summary>
<param name="fill">The fill color.</param>
<returns>A <see cref="T:System.Drawing.Brush" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.GetCachedPen(OxyPlot.OxyColor,System.Double,System.Double[],OxyPlot.LineJoin)">
<summary>
Gets the cached pen.
</summary>
<param name="stroke">The stroke color.</param>
<param name="thickness">The thickness.</param>
<param name="dashArray">The dash array.</param>
<param name="lineJoin">The line join.</param>
<returns>A <see cref="T:System.Drawing.Pen" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.CreatePen(OxyPlot.OxyColor,System.Double,System.Double[],OxyPlot.LineJoin)">
<summary>
Creates a pen.
</summary>
<param name="stroke">The stroke.</param>
<param name="thickness">The thickness.</param>
<param name="dashArray">The dash array.</param>
<param name="lineJoin">The line join.</param>
<returns>A <see cref="T:System.Drawing.Pen" />.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.SetSmoothingMode(System.Boolean)">
<summary>
Sets the smoothing mode.
</summary>
<param name="useAntiAliasing">A value indicating whether to use Anti-Aliasing.</param>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.ToFloatArray(System.Double[])">
<summary>
Converts a double array to a float array.
</summary>
<param name="a">The a.</param>
<returns>The float array.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.GraphicsRenderContext.ToPoints(System.Collections.Generic.IList{OxyPlot.ScreenPoint})">
<summary>
Converts a list of point to an array of PointF.
</summary>
<param name="points">The points.</param>
<returns>An array of points.</returns>
</member>
<member name="T:OxyPlot.WindowsForms.PlotModelExtensions">
<summary>
Provides extension methods to the <see cref="T:OxyPlot.PlotModel" />.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotModelExtensions.ToSvg(OxyPlot.PlotModel,System.Double,System.Double,System.Boolean)">
<summary>
Creates an SVG string.
</summary>
<param name="model">The model.</param>
<param name="width">The width (points).</param>
<param name="height">The height (points).</param>
<param name="isDocument">if set to <c>true</c>, the xml headers will be included (?xml and !DOCTYPE).</param>
<returns>A <see cref="T:System.String" />.</returns>
</member>
<member name="T:OxyPlot.WindowsForms.PlotView">
<summary>
Represents a control that displays a <see cref="T:OxyPlot.PlotModel" />.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.OxyPlotCategory">
<summary>
The category for the properties of this control.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.invalidateLock">
<summary>
The invalidate lock.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.modelLock">
<summary>
The model lock.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.renderingLock">
<summary>
The rendering lock.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.renderContext">
<summary>
The render context.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.trackerLabel">
<summary>
The tracker label.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.currentModel">
<summary>
The current model (holding a reference to this plot view).
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.isModelInvalidated">
<summary>
The is model invalidated.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.model">
<summary>
The model.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.defaultController">
<summary>
The default controller.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.updateDataFlag">
<summary>
The update data flag.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.PlotView.zoomRectangle">
<summary>
The zoom rectangle.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.#ctor">
<summary>
Initializes a new instance of the <see cref="T:OxyPlot.WindowsForms.PlotView" /> class.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.OxyPlot#IView#ActualModel">
<summary>
Gets the actual model in the view.
</summary>
<value>
The actual model.
</value>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ActualModel">
<summary>
Gets the actual model.
</summary>
<value>The actual model.</value>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.OxyPlot#IView#ActualController">
<summary>
Gets the actual controller.
</summary>
<value>
The actual <see cref="T:OxyPlot.IController" />.
</value>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ClientArea">
<summary>
Gets the coordinates of the client area of the view.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ActualController">
<summary>
Gets the actual plot controller.
</summary>
<value>The actual plot controller.</value>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.Model">
<summary>
Gets or sets the model.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.Controller">
<summary>
Gets or sets the plot controller.
</summary>
<value>The controller.</value>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.PanCursor">
<summary>
Gets or sets the pan cursor.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ZoomHorizontalCursor">
<summary>
Gets or sets the horizontal zoom cursor.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ZoomRectangleCursor">
<summary>
Gets or sets the rectangle zoom cursor.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PlotView.ZoomVerticalCursor">
<summary>
Gets or sets the vertical zoom cursor.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.HideTracker">
<summary>
Hides the tracker.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.HideZoomRectangle">
<summary>
Hides the zoom rectangle.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.InvalidatePlot(System.Boolean)">
<summary>
Invalidates the plot (not blocking the UI thread)
</summary>
<param name="updateData">if set to <c>true</c>, all data collections will be updated.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnModelChanged">
<summary>
Called when the Model property has been changed.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.SetCursorType(OxyPlot.CursorType)">
<summary>
Sets the cursor type.
</summary>
<param name="cursorType">The cursor type.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.ShowTracker(OxyPlot.TrackerHitResult)">
<summary>
Shows the tracker.
</summary>
<param name="data">The data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.ShowZoomRectangle(OxyPlot.OxyRect)">
<summary>
Shows the zoom rectangle.
</summary>
<param name="rectangle">The rectangle.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.SetClipboardText(System.String)">
<summary>
Sets the clipboard text.
</summary>
<param name="text">The text.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseDown(System.Windows.Forms.MouseEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseDown" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.MouseEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseMove(System.Windows.Forms.MouseEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseMove" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.MouseEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseUp(System.Windows.Forms.MouseEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseUp" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.MouseEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseEnter(System.EventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseEnter" /> event.
</summary>
<param name="e">An <see cref="T:System.EventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseLeave(System.EventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseLeave" /> event.
</summary>
<param name="e">An <see cref="T:System.EventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnMouseWheel(System.Windows.Forms.MouseEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.MouseWheel" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.MouseEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnPaint(System.Windows.Forms.PaintEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.Paint" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.PaintEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnPreviewKeyDown(System.Windows.Forms.PreviewKeyDownEventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.PreviewKeyDown" /> event.
</summary>
<param name="e">A <see cref="T:System.Windows.Forms.PreviewKeyDownEventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.OnResize(System.EventArgs)">
<summary>
Raises the <see cref="E:System.Windows.Forms.Control.Resize" /> event.
</summary>
<param name="e">An <see cref="T:System.EventArgs" /> that contains the event data.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.Dispose(System.Boolean)">
<summary>
Disposes the PlotView.
</summary>
<param name="disposing">Whether to dispose managed resources or not.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.GetModifiers">
<summary>
Gets the current modifier keys.
</summary>
<returns>A <see cref="T:OxyPlot.OxyModifierKeys" /> value.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.PlotView.DoCopy(OxyPlot.IPlotView,OxyPlot.OxyInputEventArgs)">
<summary>
Performs the copy operation.
</summary>
</member>
<member name="T:OxyPlot.WindowsForms.PngExporter">
<summary>
Provides functionality to export plots to png.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PngExporter.#ctor">
<summary>
Initializes a new instance of the <see cref="T:OxyPlot.WindowsForms.PngExporter" /> class.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PngExporter.Width">
<summary>
Gets or sets the width of the output image.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PngExporter.Height">
<summary>
Gets or sets the height of the output image.
</summary>
</member>
<member name="P:OxyPlot.WindowsForms.PngExporter.Resolution">
<summary>
Gets or sets the resolution (dpi) of the output image.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.PngExporter.Export(OxyPlot.IPlotModel,System.String,System.Int32,System.Int32,System.Double)">
<summary>
Exports the specified model.
</summary>
<param name="model">The model.</param>
<param name="fileName">The file name.</param>
<param name="width">The width.</param>
<param name="height">The height.</param>
<param name="resolution">The resolution.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PngExporter.Export(OxyPlot.IPlotModel,System.IO.Stream)">
<summary>
Exports the specified <see cref="T:OxyPlot.PlotModel" /> to the specified <see cref="T:System.IO.Stream" />.
</summary>
<param name="model">The model.</param>
<param name="stream">The output stream.</param>
</member>
<member name="M:OxyPlot.WindowsForms.PngExporter.ExportToBitmap(OxyPlot.IPlotModel)">
<summary>
Exports the specified <see cref="T:OxyPlot.PlotModel" /> to a <see cref="T:System.Drawing.Bitmap" />.
</summary>
<param name="model">The model to export.</param>
<returns>A bitmap.</returns>
</member>
<member name="T:OxyPlot.WindowsForms.SvgExporter">
<summary>
Provides functionality to export plots to scalable vector graphics using <see cref="T:System.Drawing.Graphics" /> for text measuring.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.SvgExporter.g">
<summary>
The graphics drawing surface.
</summary>
</member>
<member name="F:OxyPlot.WindowsForms.SvgExporter.grc">
<summary>
The render context.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.SvgExporter.#ctor">
<summary>
Initializes a new instance of the <see cref="T:OxyPlot.WindowsForms.SvgExporter" /> class.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.SvgExporter.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="T:OxyPlot.WindowsForms.WindowsFormsConverterExtensions">
<summary>
Extension method used to convert to/from WindowsForms classes.
</summary>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.Convert(System.Windows.Forms.MouseButtons)">
<summary>
Converts a <see cref="T:System.Windows.Forms.MouseButtons" /> to a <see cref="T:OxyPlot.OxyMouseButton" />.
</summary>
<param name="button">The button to convert.</param>
<returns>The converted mouse button.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.ToMouseWheelEventArgs(System.Windows.Forms.MouseEventArgs,OxyPlot.OxyModifierKeys)">
<summary>
Converts <see cref="T:System.Windows.Forms.MouseEventArgs" /> to <see cref="T:OxyPlot.OxyMouseWheelEventArgs" /> for a mouse wheel event.
</summary>
<param name="e">The <see cref="T:System.Windows.Forms.MouseEventArgs" /> instance containing the event data.</param>
<param name="modifiers">The modifiers.</param>
<returns>A <see cref="T:OxyPlot.OxyMouseWheelEventArgs" /> containing the converted event arguments.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.ToMouseDownEventArgs(System.Windows.Forms.MouseEventArgs,OxyPlot.OxyModifierKeys)">
<summary>
Converts <see cref="T:System.Windows.Forms.MouseEventArgs" /> to <see cref="T:OxyPlot.OxyMouseEventArgs" /> for a mouse down event.
</summary>
<param name="e">The <see cref="T:System.Windows.Forms.MouseEventArgs" /> instance containing the event data.</param>
<param name="modifiers">The modifiers.</param>
<returns>A <see cref="T:OxyPlot.OxyMouseDownEventArgs" /> containing the converted event arguments.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.ToMouseUpEventArgs(System.Windows.Forms.MouseEventArgs,OxyPlot.OxyModifierKeys)">
<summary>
Converts <see cref="T:System.Windows.Forms.MouseEventArgs" /> to <see cref="T:OxyPlot.OxyMouseEventArgs" /> for a mouse up event.
</summary>
<param name="e">The <see cref="T:System.Windows.Forms.MouseEventArgs" /> instance containing the event data.</param>
<param name="modifiers">The modifiers.</param>
<returns>A <see cref="T:OxyPlot.OxyMouseEventArgs" /> containing the converted event arguments.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.ToMouseEventArgs(System.Windows.Forms.MouseEventArgs,OxyPlot.OxyModifierKeys)">
<summary>
Converts <see cref="T:System.Windows.Forms.MouseEventArgs" /> to <see cref="T:OxyPlot.OxyMouseEventArgs" /> for a mouse event.
</summary>
<param name="e">The <see cref="T:System.Windows.Forms.MouseEventArgs" /> instance containing the event data.</param>
<param name="modifiers">The modifiers.</param>
<returns>A <see cref="T:OxyPlot.OxyMouseEventArgs" /> containing the converted event arguments.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.ToMouseEventArgs(System.EventArgs,OxyPlot.OxyModifierKeys)">
<summary>
Converts <see cref="T:System.Windows.Forms.MouseEventArgs" /> to <see cref="T:OxyPlot.OxyMouseEventArgs" /> for a mouse event.
</summary>
<param name="e">The <see cref="T:System.Windows.Forms.MouseEventArgs" /> instance containing the event data.</param>
<param name="modifiers">The modifiers.</param>
<returns>A <see cref="T:OxyPlot.OxyMouseEventArgs" /> containing the converted event arguments.</returns>
</member>
<member name="M:OxyPlot.WindowsForms.WindowsFormsConverterExtensions.Convert(System.Windows.Forms.Keys)">
<summary>
Converts the specified key.
</summary>
<param name="k">The key to convert.</param>
<returns>The converted key.</returns>
</member>
</members>
</doc>

Binary file not shown.

21742
Feanor ServerCopy/OxyPlot.xml Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,31 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>ScottPlot.WinForms</name>
</assembly>
<members>
<member name="P:ScottPlot.WinForms.FormsPlotBase.IsDesignerAlternative">
<summary>
A design time alternative view is displayed for instances where the plot control
is loaded inside Visual Studio and the SkiaSharp DLL cannot be properly loaded.
</summary>
</member>
<member name="F:ScottPlot.WinForms.FormsPlotDesignerAlternative.components">
<summary>
Required designer variable.
</summary>
</member>
<member name="M:ScottPlot.WinForms.FormsPlotDesignerAlternative.Dispose(System.Boolean)">
<summary>
Clean up any resources being used.
</summary>
<param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
</member>
<member name="M:ScottPlot.WinForms.FormsPlotDesignerAlternative.InitializeComponent">
<summary>
Required method for Designer support - do not modify
the contents of this method with the code editor.
</summary>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,166 @@
<doc>
<assembly>
<name>SkiaSharp.HarfBuzz</name>
</assembly>
<members>
<member name="T:SkiaSharp.HarfBuzz.BlobExtensions">
<summary>Various extension methods to integrate SkiaSharp and a HarfBuzz <see cref="T:HarfBuzzSharp.Blob" />.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.BlobExtensions.ToHarfBuzzBlob(SkiaSharp.SKStreamAsset)">
<param name="asset">The stream to convert into a <see cref="T:HarfBuzzSharp.Blob" />.</param>
<summary>Converts a seekable stream into a <see cref="T:HarfBuzzSharp.Blob" />.</summary>
<returns>Returns the new <see cref="T:HarfBuzzSharp.Blob" /> instance.</returns>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.CanvasExtensions">
<summary>Various extension methods to integrate a SkiaSharp <see cref="T:SkiaSharp.SKCanvas" /> and HarfBuzz.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,System.String,SkiaSharp.SKPoint,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="text">To be added.</param>
<param name="p">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,SkiaSharp.HarfBuzz.SKShaper,System.String,SkiaSharp.SKPoint,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="shaper">To be added.</param>
<param name="text">To be added.</param>
<param name="p">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="canvas">To be added.</param>
<param name="text">To be added.</param>
<param name="x">To be added.</param>
<param name="y">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.CanvasExtensions.DrawShapedText(SkiaSharp.SKCanvas,SkiaSharp.HarfBuzz.SKShaper,System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="canvas">The canvas to draw on.</param>
<param name="shaper">The text shaper to use when shaping the text.</param>
<param name="text">The text to draw.</param>
<param name="x">The x-coordinate of the origin of the text being drawn.</param>
<param name="y">The y-coordinate of the origin of the text being drawn.</param>
<param name="paint">The paint to use when drawing the text.</param>
<summary>Draws shaped text on the canvas at the specified coordinates.</summary>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.FontExtensions">
<summary>Various extension methods to integrate SkiaSharp and a HarfBuzz <see cref="T:HarfBuzzSharp.Font" />.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.FontExtensions.GetScale(HarfBuzzSharp.Font)">
<param name="font">The font to retrieve the scale.</param>
<summary>Retrieves the font scale.</summary>
<returns>Returns the font scale.</returns>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.FontExtensions.SetScale(HarfBuzzSharp.Font,SkiaSharp.SKSizeI)">
<param name="font">The font to set the scale.</param>
<param name="scale">The scale to set.</param>
<summary>Sets the font scale.</summary>
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.SKShaper">
<summary>Encapsulates basic text shaping.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper(SkiaSharp.SKTypeface)">
<param name="typeface">The typeface to use for the text shaping.</param>
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper" /> instance using the specified typeface.</summary>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Dispose">
<summary>Releases all resources used by this <see cref="T:SkiaSharp.HarfBuzz.SKShaper" />.</summary>
<remarks>Always dispose the object before you release your last reference to the <see cref="T:SkiaSharp.HarfBuzz.SKShaper" />. Otherwise, the resources it is using will not be freed until the garbage collector calls the finalizer.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(HarfBuzzSharp.Buffer,SkiaSharp.SKPaint)">
<param name="buffer">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(System.String,SkiaSharp.SKPaint)">
<param name="text">The text to shape.</param>
<param name="paint">The paint to use.</param>
<summary>Shapes the specified text using the properties from the paint.</summary>
<returns>Returns the results of the shaping operation.</returns>
<remarks />
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(HarfBuzzSharp.Buffer,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="buffer">To be added.</param>
<param name="xOffset">To be added.</param>
<param name="yOffset">To be added.</param>
<param name="paint">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</member>
<member name="M:SkiaSharp.HarfBuzz.SKShaper.Shape(System.String,System.Single,System.Single,SkiaSharp.SKPaint)">
<param name="text">The text to shape.</param>
<param name="xOffset">The x-offset to use when creating the shaping result.</param>
<param name="yOffset">The y-offset to use when creating the shaping result.</param>
<param name="paint">The paint to use.</param>
<summary>Shapes the specified text using the properties from the paint.</summary>
<returns>Returns the results of the shaping operation.</returns>
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper.Typeface">
<summary>Gets the typeface used when creating the shaper.</summary>
<value />
<remarks />
</member>
<member name="T:SkiaSharp.HarfBuzz.SKShaper+Result">
<summary>Represents the result of a shaping operation.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result">
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper.Result" /> instance using empty values.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result(System.UInt32[],System.UInt32[],SkiaSharp.SKPoint[])">
<param name="codepoints">The glyph Unicode code points.</param>
<param name="clusters">The glyph clusters.</param>
<param name="points">The glyph positions.</param>
<summary>Creates a new <see cref="T:SkiaSharp.HarfBuzz.SKShaper.Result" /> instance using the specified values.</summary>
<remarks />
</member>
<member name="C:SkiaSharp.HarfBuzz.SKShaper+Result(System.UInt32[],System.UInt32[],SkiaSharp.SKPoint[],System.Single)">
<param name="codepoints">To be added.</param>
<param name="clusters">To be added.</param>
<param name="points">To be added.</param>
<param name="width">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Clusters">
<summary>Gets the glyph clusters.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Codepoints">
<summary>Gets the glyph Unicode code points.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Points">
<summary>Gets the glyph positions.</summary>
<value />
<remarks />
</member>
<member name="P:SkiaSharp.HarfBuzz.SKShaper+Result.Width">
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,6 @@
<doc>
<assembly>
<name>SkiaSharp.Views.Desktop.Common</name>
</assembly>
<members />
</doc>

Binary file not shown.

View File

@@ -0,0 +1,6 @@
<doc>
<assembly>
<name>SkiaSharp.Views.WindowsForms</name>
</assembly>
<members />
</doc>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Buffers</name>
</assembly>
<members>
<member name="T:System.Buffers.ArrayPool`1">
<summary>Provides a resource pool that enables reusing instances of type <see cref="T[]"></see>.</summary>
<typeparam name="T">The type of the objects that are in the resource pool.</typeparam>
</member>
<member name="M:System.Buffers.ArrayPool`1.#ctor">
<summary>Initializes a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class.</summary>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
<summary>Creates a new instance of the <see cref="T:System.Buffers.ArrayPool`1"></see> class using the specifed configuration.</summary>
<param name="maxArrayLength">The maximum length of an array instance that may be stored in the pool.</param>
<param name="maxArraysPerBucket">The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access.</param>
<returns>A new instance of the <see cref="System.Buffers.ArrayPool`1"></see> class with the specified configuration.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
<summary>Retrieves a buffer that is at least the requested length.</summary>
<param name="minimumLength">The minimum length of the array.</param>
<returns>An array of type <see cref="T[]"></see> that is at least <paramref name="minimumLength">minimumLength</paramref> in length.</returns>
</member>
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
<summary>Returns an array to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method on the same <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<param name="array">A buffer to return to the pool that was previously obtained using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method.</param>
<param name="clearArray">Indicates whether the contents of the buffer should be cleared before reuse. If <paramref name="clearArray">clearArray</paramref> is set to true, and if the pool will store the buffer to enable subsequent reuse, the <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"></see> method will clear the <paramref name="array">array</paramref> of its contents so that a subsequent caller using the <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"></see> method will not see the content of the previous caller. If <paramref name="clearArray">clearArray</paramref> is set to false or if the pool will release the buffer, the array&amp;#39;s contents are left unchanged.</param>
</member>
<member name="P:System.Buffers.ArrayPool`1.Shared">
<summary>Gets a shared <see cref="T:System.Buffers.ArrayPool`1"></see> instance.</summary>
<returns>A shared <see cref="System.Buffers.ArrayPool`1"></see> instance.</returns>
</member>
</members>
</doc>

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,355 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Memory</name>
</assembly>
<members>
<member name="T:System.Span`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.Span`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.Span`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.Span`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.Span`1.Clear">
</member>
<member name="M:System.Span`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.Span`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.Span`1.Empty">
<returns></returns>
</member>
<member name="M:System.Span`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Fill(`0)">
<param name="value"></param>
</member>
<member name="M:System.Span`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.Span`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.Span`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.Span`1.Length">
<returns></returns>
</member>
<member name="M:System.Span`1.op_Equality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.ArraySegment{T})~System.Span{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(System.Span{T})~System.ReadOnlySpan{T}">
<param name="span"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Implicit(T[])~System.Span{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.op_Inequality(System.Span{`0},System.Span{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.Span`1.ToArray">
<returns></returns>
</member>
<member name="M:System.Span`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
<member name="T:System.SpanExtensions">
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsBytes``1(System.Span{``0})">
<param name="source"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan(System.String)">
<param name="text"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(System.ArraySegment{``0})">
<param name="arraySegment"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.AsSpan``1(``0[])">
<param name="array"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.CopyTo``1(``0[],System.Span{``0})">
<param name="array"></param>
<param name="destination"></param>
<typeparam name="T"></typeparam>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.Span{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.Byte)">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOf``1(System.Span{``0},``0)">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<param name="value2"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.IndexOfAny(System.ReadOnlySpan{System.Byte},System.Byte,System.Byte)">
<param name="span"></param>
<param name="value0"></param>
<param name="value1"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.ReadOnlySpan{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.NonPortableCast``2(System.Span{``0})">
<param name="source"></param>
<typeparam name="TFrom"></typeparam>
<typeparam name="TTo"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="first"></param>
<param name="second"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.SequenceEqual``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="first"></param>
<param name="second"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith(System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
<param name="span"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.ReadOnlySpan{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:System.SpanExtensions.StartsWith``1(System.Span{``0},System.ReadOnlySpan{``0})">
<param name="span"></param>
<param name="value"></param>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="T:System.ReadOnlySpan`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[])">
<param name="array"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(System.Void*,System.Int32)">
<param name="pointer"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32)">
<param name="array"></param>
<param name="start"></param>
</member>
<member name="M:System.ReadOnlySpan`1.#ctor(`0[],System.Int32,System.Int32)">
<param name="array"></param>
<param name="start"></param>
<param name="length"></param>
</member>
<member name="M:System.ReadOnlySpan`1.CopyTo(System.Span{`0})">
<param name="destination"></param>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousCreate(System.Object,`0@,System.Int32)">
<param name="obj"></param>
<param name="objectData"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.DangerousGetPinnableReference">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Empty">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Equals(System.Object)">
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.GetHashCode">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.IsEmpty">
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Item(System.Int32)">
<param name="index"></param>
<returns></returns>
</member>
<member name="P:System.ReadOnlySpan`1.Length">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Equality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(System.ArraySegment{T})~System.ReadOnlySpan{T}">
<param name="arraySegment"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Implicit(T[])~System.ReadOnlySpan{T}">
<param name="array"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.op_Inequality(System.ReadOnlySpan{`0},System.ReadOnlySpan{`0})">
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32)">
<param name="start"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.Slice(System.Int32,System.Int32)">
<param name="start"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.ToArray">
<returns></returns>
</member>
<member name="M:System.ReadOnlySpan`1.TryCopyTo(System.Span{`0})">
<param name="destination"></param>
<returns></returns>
</member>
</members>
</doc>

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,200 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Runtime.CompilerServices.Unsafe</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.Unsafe">
<summary>Contains generic, low-level functionality for manipulating pointers.</summary>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
<summary>Adds an element offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
<summary>Adds a byte offset to the given reference.</summary>
<param name="source">The reference to add the offset to.</param>
<param name="byteOffset">The offset to add.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
<summary>Determines whether the specified references point to the same location.</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>true if <paramref name="left">left</paramref> and <paramref name="right">right</paramref> point to the same location; otherwise, false.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
<summary>Casts the given object to the specified type.</summary>
<param name="o">The object to cast.</param>
<typeparam name="T">The type which the object will be cast to.</typeparam>
<returns>The original object, casted to the given type.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
<summary>Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</summary>
<param name="source">The reference to reinterpret.</param>
<typeparam name="TFrom">The type of reference to reinterpret..</typeparam>
<typeparam name="TTo">The desired type of the reference.</typeparam>
<returns>A reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
<summary>Returns a pointer to the given by-ref parameter.</summary>
<param name="value">The object whose pointer is obtained.</param>
<typeparam name="T">The type of object.</typeparam>
<returns>A pointer to the given value.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
<summary>Reinterprets the given location as a reference to a value of type <typeparamref name="T">T</typeparamref>.</summary>
<param name="source">The location of the value to reference.</param>
<typeparam name="T">The type of the interpreted location.</typeparam>
<returns>A reference to a value of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
<summary>Determines the byte offset from origin to target from the given references.</summary>
<param name="origin">The reference to origin.</param>
<param name="target">The reference to target.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>Byte offset from origin to target i.e. <paramref name="target">target</paramref> - <paramref name="origin">origin</paramref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A reference to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
<summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to copy to.</param>
<param name="source">A pointer to the value to copy.</param>
<typeparam name="T">The type of value to copy.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
<summary>Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
<summary>Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
<summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="source">The location to read from.</param>
<typeparam name="T">The type to read.</typeparam>
<returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
<summary>Returns the size of an object of the given type parameter.</summary>
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
<returns>The size of an object of type <typeparamref name="T">T</typeparamref>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
<summary>Subtracts an element offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
<summary>Subtracts a byte offset from the given reference.</summary>
<param name="source">The reference to subtract the offset from.</param>
<param name="byteOffset"></param>
<typeparam name="T">The type of reference.</typeparam>
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
<summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
without assuming architecture dependent alignment of the addresses.</summary>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
<typeparam name="T">The type of value to write.</typeparam>
</member>
</members>
</doc>

View File

@@ -0,0 +1,166 @@
<?xml version="1.0" encoding="utf-8"?><doc>
<assembly>
<name>System.Threading.Tasks.Extensions</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.ValueTaskAwaiter`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult">
<returns></returns>
</member>
<member name="P:System.Runtime.CompilerServices.ValueTaskAwaiter`1.IsCompleted">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.OnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.UnsafeOnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="T:System.Threading.Tasks.ValueTask`1">
<summary>Provides a value type that wraps a <see cref="Task{TResult}"></see> and a <typeparamref name="TResult">TResult</typeparamref>, only one of which is used.</summary>
<typeparam name="TResult">The result.</typeparam>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(System.Threading.Tasks.Task{`0})">
<summary>Initializes a new instance of the <see cref="ValueTask{TResult}"></see> class using the supplied task that represents the operation.</summary>
<param name="task">The task.</param>
<exception cref="T:System.ArgumentNullException">The <paramref name="task">task</paramref> argument is null.</exception>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(`0)">
<summary>Initializes a new instance of the <see cref="ValueTask{TResult}"></see> class using the supplied result of a successful operation.</summary>
<param name="result">The result.</param>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.AsTask">
<summary>Retrieves a <see cref="Task{TResult}"></see> object that represents this <see cref="ValueTask{TResult}"></see>.</summary>
<returns>The <see cref="Task{TResult}"></see> object that is wrapped in this <see cref="ValueTask{TResult}"></see> if one exists, or a new <see cref="Task{TResult}"></see> object that represents the result.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.ConfigureAwait(System.Boolean)">
<summary>Configures an awaiter for this value.</summary>
<param name="continueOnCapturedContext">true to attempt to marshal the continuation back to the captured context; otherwise, false.</param>
<returns>The configured awaiter.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.CreateAsyncMethodBuilder">
<summary>Creates a method builder for use with an async method.</summary>
<returns>The created builder.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Object)">
<summary>Determines whether the specified object is equal to the current object.</summary>
<param name="obj">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Threading.Tasks.ValueTask{`0})">
<summary>Determines whether the specified <see cref="ValueTask{TResult}"></see> object is equal to the current <see cref="ValueTask{TResult}"></see> object.</summary>
<param name="other">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.GetAwaiter">
<summary>Creates an awaiter for this value.</summary>
<returns>The awaiter.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.GetHashCode">
<summary>Returns the hash code for this instance.</summary>
<returns>The hash code for the current object.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCanceled">
<summary>Gets a value that indicates whether this object represents a canceled operation.</summary>
<returns>true if this object represents a canceled operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompleted">
<summary>Gets a value that indicates whether this object represents a completed operation.</summary>
<returns>true if this object represents a completed operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompletedSuccessfully">
<summary>Gets a value that indicates whether this object represents a successfully completed operation.</summary>
<returns>true if this object represents a successfully completed operation; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.IsFaulted">
<summary>Gets a value that indicates whether this object represents a failed operation.</summary>
<returns>true if this object represents a failed operation; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.op_Equality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
<summary>Compares two values for equality.</summary>
<param name="left">The first value to compare.</param>
<param name="right">The second value to compare.</param>
<returns>true if the two <see cref="ValueTask{TResult}"></see> values are equal; otherwise, false.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.op_Inequality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
<summary>Determines whether two <see cref="ValueTask{TResult}"></see> values are unequal.</summary>
<param name="left">The first value to compare.</param>
<param name="right">The seconed value to compare.</param>
<returns>true if the two <see cref="ValueTask{TResult}"></see> values are not equal; otherwise, false.</returns>
</member>
<member name="P:System.Threading.Tasks.ValueTask`1.Result">
<summary>Gets the result.</summary>
<returns>The result.</returns>
</member>
<member name="M:System.Threading.Tasks.ValueTask`1.ToString">
<summary>Returns a string that represents the current object.</summary>
<returns>A string that represents the current object.</returns>
</member>
<member name="T:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute">
</member>
<member name="M:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.#ctor(System.Type)">
<param name="builderType"></param>
</member>
<member name="P:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.BuilderType">
<returns></returns>
</member>
<member name="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitOnCompleted``2(``0@,``1@)">
<param name="awaiter"></param>
<param name="stateMachine"></param>
<typeparam name="TAwaiter"></typeparam>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitUnsafeOnCompleted``2(``0@,``1@)">
<param name="awaiter"></param>
<param name="stateMachine"></param>
<typeparam name="TAwaiter"></typeparam>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Create">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetException(System.Exception)">
<param name="exception"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetResult(`0)">
<param name="result"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetStateMachine(System.Runtime.CompilerServices.IAsyncStateMachine)">
<param name="stateMachine"></param>
</member>
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Start``1(``0@)">
<param name="stateMachine"></param>
<typeparam name="TStateMachine"></typeparam>
</member>
<member name="P:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Task">
<returns></returns>
</member>
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.GetResult">
<returns></returns>
</member>
<member name="P:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.IsCompleted">
<returns></returns>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.OnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.UnsafeOnCompleted(System.Action)">
<param name="continuation"></param>
</member>
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1">
<typeparam name="TResult"></typeparam>
</member>
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.GetAwaiter">
<returns></returns>
</member>
</members>
</doc>

Binary file not shown.

View File

@@ -0,0 +1,8 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>System.ValueTuple</name>
</assembly>
<members>
</members>
</doc>

Binary file not shown.

Binary file not shown.

72
Feanor.sln Normal file
View File

@@ -0,0 +1,72 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30621.155
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Maser.Feanor.Model", "Maser.Feanor\Maser.Feanor.Model.csproj", "{F96EC5EB-647C-405E-934F-08DF688F55F8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Maser.Feanor.Biz", "Maser.Feanor.Biz\Maser.Feanor.Biz.csproj", "{316710E0-2143-44CD-8779-A833A2987174}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FeanorClient", "FeanorClient\FeanorClient.csproj", "{750F6283-ED36-4BA6-89C3-943E8A858E41}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FeanorManager", "FeanorConfig\FeanorManager.csproj", "{77EC875B-2718-41D3-9CD2-1E8191797673}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MIDSInterface", "MIDSComm\MIDSInterface.csproj", "{41C4BD97-E017-4877-8A87-9185A5315496}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FeanorProjects", "FeanorProjects\FeanorProjects.csproj", "{3CB34174-B0A7-4780-87BF-809BF5D68C86}"
ProjectSection(ProjectDependencies) = postProject
{77EC875B-2718-41D3-9CD2-1E8191797673} = {77EC875B-2718-41D3-9CD2-1E8191797673}
{750F6283-ED36-4BA6-89C3-943E8A858E41} = {750F6283-ED36-4BA6-89C3-943E8A858E41}
{CE8FB8AF-6B3A-42D2-9808-E94790707E91} = {CE8FB8AF-6B3A-42D2-9808-E94790707E91}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HalCheck", "HalCheck\HalCheck.csproj", "{6D20F77A-F26C-4E13-BC3B-0D3D1B4B300A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Server", "Server\Server.csproj", "{CE8FB8AF-6B3A-42D2-9808-E94790707E91}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{F96EC5EB-647C-405E-934F-08DF688F55F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F96EC5EB-647C-405E-934F-08DF688F55F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F96EC5EB-647C-405E-934F-08DF688F55F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F96EC5EB-647C-405E-934F-08DF688F55F8}.Release|Any CPU.Build.0 = Release|Any CPU
{316710E0-2143-44CD-8779-A833A2987174}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{316710E0-2143-44CD-8779-A833A2987174}.Debug|Any CPU.Build.0 = Debug|Any CPU
{316710E0-2143-44CD-8779-A833A2987174}.Release|Any CPU.ActiveCfg = Release|Any CPU
{316710E0-2143-44CD-8779-A833A2987174}.Release|Any CPU.Build.0 = Release|Any CPU
{750F6283-ED36-4BA6-89C3-943E8A858E41}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{750F6283-ED36-4BA6-89C3-943E8A858E41}.Debug|Any CPU.Build.0 = Debug|Any CPU
{750F6283-ED36-4BA6-89C3-943E8A858E41}.Release|Any CPU.ActiveCfg = Release|Any CPU
{750F6283-ED36-4BA6-89C3-943E8A858E41}.Release|Any CPU.Build.0 = Release|Any CPU
{77EC875B-2718-41D3-9CD2-1E8191797673}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{77EC875B-2718-41D3-9CD2-1E8191797673}.Debug|Any CPU.Build.0 = Debug|Any CPU
{77EC875B-2718-41D3-9CD2-1E8191797673}.Release|Any CPU.ActiveCfg = Release|Any CPU
{77EC875B-2718-41D3-9CD2-1E8191797673}.Release|Any CPU.Build.0 = Release|Any CPU
{41C4BD97-E017-4877-8A87-9185A5315496}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{41C4BD97-E017-4877-8A87-9185A5315496}.Debug|Any CPU.Build.0 = Debug|Any CPU
{41C4BD97-E017-4877-8A87-9185A5315496}.Release|Any CPU.ActiveCfg = Release|Any CPU
{41C4BD97-E017-4877-8A87-9185A5315496}.Release|Any CPU.Build.0 = Release|Any CPU
{3CB34174-B0A7-4780-87BF-809BF5D68C86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3CB34174-B0A7-4780-87BF-809BF5D68C86}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3CB34174-B0A7-4780-87BF-809BF5D68C86}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3CB34174-B0A7-4780-87BF-809BF5D68C86}.Release|Any CPU.Build.0 = Release|Any CPU
{6D20F77A-F26C-4E13-BC3B-0D3D1B4B300A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6D20F77A-F26C-4E13-BC3B-0D3D1B4B300A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6D20F77A-F26C-4E13-BC3B-0D3D1B4B300A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6D20F77A-F26C-4E13-BC3B-0D3D1B4B300A}.Release|Any CPU.Build.0 = Release|Any CPU
{CE8FB8AF-6B3A-42D2-9808-E94790707E91}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CE8FB8AF-6B3A-42D2-9808-E94790707E91}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CE8FB8AF-6B3A-42D2-9808-E94790707E91}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CE8FB8AF-6B3A-42D2-9808-E94790707E91}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {3A0406DC-7520-4AEB-8431-4865AEC2E81C}
EndGlobalSection
EndGlobal

9
FeanorClient/App.config Normal file
View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings/>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

BIN
FeanorClient/C.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

BIN
FeanorClient/Carc.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

View File

@@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Maser.Feanor.Client
{
public enum ChamberStatus
{
Init,
Running,
Initializing,
AbortRequested,
Aborted,
Idle,
NoConn
}
public static class ChamberStatusExtensions
{
public static string ToText(this ChamberStatus status)
{
string result = status.ToString();
switch (status)
{
case ChamberStatus.AbortRequested:
return "Abort requested";
case ChamberStatus.NoConn:
return "No connection";
}
return result;
}
}
}

354
FeanorClient/Client.Designer.cs generated Normal file
View File

@@ -0,0 +1,354 @@
namespace Maser.Feanor.Client
{
partial class FeanorClient
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FeanorClient));
this.lblStatus = new System.Windows.Forms.Label();
this.dgvChambers = new System.Windows.Forms.DataGridView();
this.dgvChambersColMIDS = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgvChambersColNetwork = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgvChambersColStatus = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgvChambersColHTTP = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.timer = new System.Windows.Forms.Timer();
this.cboxShowAll = new System.Windows.Forms.CheckBox();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip();
this.contextMenuStrip2 = new System.Windows.Forms.ContextMenuStrip();
this.panel1 = new System.Windows.Forms.Panel();
this.panel2 = new System.Windows.Forms.Panel();
this.panel3 = new System.Windows.Forms.Panel();
this.statusPercentage = new System.Windows.Forms.RichTextBox();
this.PercProgress = new System.Windows.Forms.ProgressBar();
this.errorProvider1 = new System.Windows.Forms.ErrorProvider();
this.LastStartupTimer = new System.Windows.Forms.Timer();
this.UpdateRaspberryTime = new System.Windows.Forms.Timer();
this.pnlNodesOffline = new System.Windows.Forms.Panel();
this.label2 = new System.Windows.Forms.Label();
this.btnDismiss = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.timerSaveStatusPage = new System.Windows.Forms.Timer();
((System.ComponentModel.ISupportInitialize)(this.dgvChambers)).BeginInit();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
this.panel3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.errorProvider1)).BeginInit();
this.pnlNodesOffline.SuspendLayout();
this.SuspendLayout();
//
// lblStatus
//
this.lblStatus.AutoSize = true;
this.lblStatus.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblStatus.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.lblStatus.Location = new System.Drawing.Point(3, 15);
this.lblStatus.Name = "lblStatus";
this.lblStatus.Size = new System.Drawing.Size(56, 20);
this.lblStatus.TabIndex = 0;
this.lblStatus.Text = "Status";
this.lblStatus.Click += new System.EventHandler(this.lblStatus_Click);
//
// dgvChambers
//
this.dgvChambers.AllowUserToAddRows = false;
this.dgvChambers.AllowUserToDeleteRows = false;
this.dgvChambers.AllowUserToResizeColumns = false;
this.dgvChambers.AllowUserToResizeRows = false;
this.dgvChambers.BackgroundColor = System.Drawing.Color.Gray;
this.dgvChambers.BorderStyle = System.Windows.Forms.BorderStyle.None;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.Gray;
dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvChambers.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.dgvChambers.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvChambers.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.dgvChambersColMIDS,
this.dgvChambersColNetwork,
this.dgvChambersColStatus,
this.dgvChambersColHTTP});
this.dgvChambers.EnableHeadersVisualStyles = false;
this.dgvChambers.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.dgvChambers.Location = new System.Drawing.Point(12, 73);
this.dgvChambers.MultiSelect = false;
this.dgvChambers.Name = "dgvChambers";
this.dgvChambers.ReadOnly = true;
this.dgvChambers.RowHeadersVisible = false;
this.dgvChambers.RowHeadersWidth = 62;
this.dgvChambers.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.dgvChambers.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dgvChambers.Size = new System.Drawing.Size(651, 414);
this.dgvChambers.TabIndex = 1;
//
// dgvChambersColMIDS
//
this.dgvChambersColMIDS.HeaderText = "MIDS";
this.dgvChambersColMIDS.MinimumWidth = 8;
this.dgvChambersColMIDS.Name = "dgvChambersColMIDS";
this.dgvChambersColMIDS.ReadOnly = true;
this.dgvChambersColMIDS.Width = 150;
//
// dgvChambersColNetwork
//
this.dgvChambersColNetwork.HeaderText = "IP";
this.dgvChambersColNetwork.MinimumWidth = 8;
this.dgvChambersColNetwork.Name = "dgvChambersColNetwork";
this.dgvChambersColNetwork.ReadOnly = true;
this.dgvChambersColNetwork.Width = 150;
//
// dgvChambersColStatus
//
this.dgvChambersColStatus.HeaderText = "Status";
this.dgvChambersColStatus.MinimumWidth = 8;
this.dgvChambersColStatus.Name = "dgvChambersColStatus";
this.dgvChambersColStatus.ReadOnly = true;
this.dgvChambersColStatus.Width = 150;
//
// dgvChambersColHTTP
//
this.dgvChambersColHTTP.HeaderText = "Last HTTP";
this.dgvChambersColHTTP.MinimumWidth = 8;
this.dgvChambersColHTTP.Name = "dgvChambersColHTTP";
this.dgvChambersColHTTP.ReadOnly = true;
this.dgvChambersColHTTP.Width = 200;
//
// timer
//
this.timer.Interval = 1000;
this.timer.Tick += new System.EventHandler(this.timer_Tick);
//
// cboxShowAll
//
this.cboxShowAll.AutoSize = true;
this.cboxShowAll.Checked = true;
this.cboxShowAll.CheckState = System.Windows.Forms.CheckState.Checked;
this.cboxShowAll.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.cboxShowAll.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.cboxShowAll.Location = new System.Drawing.Point(16, 14);
this.cboxShowAll.Name = "cboxShowAll";
this.cboxShowAll.Size = new System.Drawing.Size(142, 24);
this.cboxShowAll.TabIndex = 2;
this.cboxShowAll.Text = "Show all servers";
this.cboxShowAll.UseVisualStyleBackColor = true;
this.cboxShowAll.CheckedChanged += new System.EventHandler(this.cboxShowAll_CheckedChanged);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(61, 4);
//
// contextMenuStrip2
//
this.contextMenuStrip2.Name = "contextMenuStrip2";
this.contextMenuStrip2.Size = new System.Drawing.Size(61, 4);
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.Gray;
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.lblStatus);
this.panel1.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.panel1.Location = new System.Drawing.Point(12, 12);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(233, 55);
this.panel1.TabIndex = 3;
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint);
//
// panel2
//
this.panel2.BackColor = System.Drawing.Color.Gray;
this.panel2.Controls.Add(this.cboxShowAll);
this.panel2.Location = new System.Drawing.Point(251, 12);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(159, 55);
this.panel2.TabIndex = 4;
//
// panel3
//
this.panel3.BackColor = System.Drawing.Color.Gray;
this.panel3.Controls.Add(this.statusPercentage);
this.panel3.Controls.Add(this.PercProgress);
this.panel3.Location = new System.Drawing.Point(416, 12);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(247, 55);
this.panel3.TabIndex = 5;
//
// statusPercentage
//
this.statusPercentage.BackColor = System.Drawing.Color.Gray;
this.statusPercentage.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.statusPercentage.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.statusPercentage.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.statusPercentage.Location = new System.Drawing.Point(177, 14);
this.statusPercentage.Name = "statusPercentage";
this.statusPercentage.Size = new System.Drawing.Size(55, 36);
this.statusPercentage.TabIndex = 0;
this.statusPercentage.Text = "";
//
// PercProgress
//
this.PercProgress.Location = new System.Drawing.Point(12, 16);
this.PercProgress.Name = "PercProgress";
this.PercProgress.Size = new System.Drawing.Size(159, 23);
this.PercProgress.TabIndex = 0;
this.PercProgress.Click += new System.EventHandler(this.PercProgress_Click);
//
// errorProvider1
//
this.errorProvider1.ContainerControl = this;
//
// LastStartupTimer
//
this.LastStartupTimer.Enabled = true;
this.LastStartupTimer.Interval = 600000;
this.LastStartupTimer.Tick += new System.EventHandler(this.LastStartupTimer_Tick);
//
// UpdateRaspberryTime
//
this.UpdateRaspberryTime.Enabled = true;
this.UpdateRaspberryTime.Interval = 60000;
this.UpdateRaspberryTime.Tick += new System.EventHandler(this.UpdateRaspberryTime_Tick);
//
// pnlNodesOffline
//
this.pnlNodesOffline.BackColor = System.Drawing.Color.Silver;
this.pnlNodesOffline.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pnlNodesOffline.Controls.Add(this.label2);
this.pnlNodesOffline.Controls.Add(this.btnDismiss);
this.pnlNodesOffline.Controls.Add(this.label1);
this.pnlNodesOffline.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
this.pnlNodesOffline.Location = new System.Drawing.Point(104, 164);
this.pnlNodesOffline.Name = "pnlNodesOffline";
this.pnlNodesOffline.Size = new System.Drawing.Size(468, 212);
this.pnlNodesOffline.TabIndex = 4;
this.pnlNodesOffline.Visible = false;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label2.ForeColor = System.Drawing.SystemColors.Highlight;
this.label2.Location = new System.Drawing.Point(4, 120);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(0, 33);
this.label2.TabIndex = 3;
//
// btnDismiss
//
this.btnDismiss.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnDismiss.ForeColor = System.Drawing.SystemColors.Highlight;
this.btnDismiss.Location = new System.Drawing.Point(167, 101);
this.btnDismiss.Name = "btnDismiss";
this.btnDismiss.Size = new System.Drawing.Size(138, 81);
this.btnDismiss.TabIndex = 2;
this.btnDismiss.Text = "Dismiss";
this.btnDismiss.UseVisualStyleBackColor = true;
this.btnDismiss.Click += new System.EventHandler(this.btnDismiss_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label1.ForeColor = System.Drawing.SystemColors.Highlight;
this.label1.Location = new System.Drawing.Point(14, 30);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(440, 33);
this.label1.TabIndex = 1;
this.label1.Text = "Two or more nodes are offline!";
this.label1.Click += new System.EventHandler(this.label1_Click);
//
// timerSaveStatusPage
//
this.timerSaveStatusPage.Enabled = true;
this.timerSaveStatusPage.Interval = 60000;
this.timerSaveStatusPage.Tick += new System.EventHandler(this.timerSaveStatusPage_Tick);
//
// FeanorClient
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.DimGray;
this.ClientSize = new System.Drawing.Size(674, 494);
this.Controls.Add(this.pnlNodesOffline);
this.Controls.Add(this.panel3);
this.Controls.Add(this.panel2);
this.Controls.Add(this.panel1);
this.Controls.Add(this.dgvChambers);
this.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
this.HelpButton = true;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FeanorClient";
this.Text = "Feanor - Clients";
this.TransparencyKey = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(61)))), ((int)(((byte)(76)))));
this.WindowState = System.Windows.Forms.FormWindowState.Minimized;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FeanorClient_FormClosing);
this.Load += new System.EventHandler(this.FeanorClient_Load);
((System.ComponentModel.ISupportInitialize)(this.dgvChambers)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
this.panel3.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.errorProvider1)).EndInit();
this.pnlNodesOffline.ResumeLayout(false);
this.pnlNodesOffline.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Label lblStatus;
private System.Windows.Forms.DataGridView dgvChambers;
private System.Windows.Forms.Timer timer;
private System.Windows.Forms.CheckBox cboxShowAll;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip2;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.ProgressBar PercProgress;
private System.Windows.Forms.RichTextBox statusPercentage;
private System.Windows.Forms.ErrorProvider errorProvider1;
public System.Windows.Forms.Timer LastStartupTimer;
private System.Windows.Forms.Timer UpdateRaspberryTime;
private System.Windows.Forms.DataGridViewTextBoxColumn dgvChambersColMIDS;
private System.Windows.Forms.DataGridViewTextBoxColumn dgvChambersColNetwork;
private System.Windows.Forms.DataGridViewTextBoxColumn dgvChambersColStatus;
private System.Windows.Forms.DataGridViewTextBoxColumn dgvChambersColHTTP;
private System.Windows.Forms.Panel pnlNodesOffline;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button btnDismiss;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Timer timerSaveStatusPage;
}
}

313
FeanorClient/Client.cs Normal file
View File

@@ -0,0 +1,313 @@
using Maser.Feanor.Biz;
using Maser.Feanor.Model;
using System;
using System.Collections.Generic;
using System.Net;
using System.Windows.Forms;
using System.IO;
using System.Text;
namespace Maser.Feanor.Client
{
public partial class FeanorClient : Form
{
private List<ClientWorker> _ClientWorkers = new List<ClientWorker>();
#warning Form laten zien in het midden van het scherm always on top als er iets fout gaat!
public FeanorClient()
{
InitializeComponent();
System.Reflection.Assembly ass = System.Reflection.Assembly.GetEntryAssembly(); // report build version
string exe = System.IO.Path.GetFullPath(ass.Location);
DateTime dt = new System.IO.FileInfo(exe).LastWriteTimeUtc;
this.Text = String.Format("Feanor - Clients" + " v{0:0000}{1:00}{2:00}", dt.Year, dt.Month, dt.Day);
}
private Server.Server _Server;
public Server.Server Server { get { return _Server; } }
public DateTime LastHTTP { get { return _LastHTTP; } }
private DateTime _LastHTTP;
private DateTime _LastDBWrite; // Used for detecting idling of server
public ChamberStatus Status { get { return _status; } }
private ChamberStatus _status;
private Chamber _Chamber;
public Chamber Chamber { get { return _Chamber; } }
private void FeanorClient_Load(object sender, EventArgs e)
{
StartWorkers();
}
private void StartWorkers()
{
Console.WriteLine("Checking if DB is online...");
lblStatus.Text = "Connecting to database...";
if (!SQLMethods.DatabaseOnline(60))
{
lblStatus.Text = "Could not connect to database...";
Console.WriteLine("Database OFFLINE");
return;
}
else
{
Console.WriteLine("Database online");
}
// Construct ClientWorkers from all active Chambers
_ClientWorkers = new List<ClientWorker>();
foreach (Chamber c in new Chambers().GetAllActive())
_ClientWorkers.Add(new ClientWorker(c));
// Initiate gv
Initialize_dgvChambers(_ClientWorkers.Count);
// Start workers
foreach (ClientWorker cw in _ClientWorkers)
cw.Start();
timer.Start();
LastStartupTimer.Start();
}
private void Initialize_dgvChambers(int rows)
{
// Initiate in dgv
// dgvChambers.DefaultCellStyle.SelectionBackColor = dgvChambers.DefaultCellStyle.BackColor;
// dgvChambers.DefaultCellStyle.SelectionForeColor = dgvChambers.DefaultCellStyle.ForeColor;
foreach (DataGridViewColumn column in dgvChambers.Columns)
{
column.SortMode = DataGridViewColumnSortMode.NotSortable;
column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
column.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
while (dgvChambers.Rows.Count > 0)
dgvChambers.Rows.RemoveAt(0);
dgvChambers.Rows.Add(rows);
foreach (DataGridViewRow row in dgvChambers.Rows)
{
//
}
//LastStartupTimer_Tick(null, null); // Obtain last startup of RPI
//CheckDBstatus(); // Check if SQL DB is online
UpdateRaspberryTime_Tick(null, null); // Set internal time of RPI
}
private void timer_Tick(object sender, EventArgs e)
{
lblStatus.Text = Time.Local.ToString() + " (UTC+1)"; // was lblStatus.Text = Time.UTC.ToString() +" (UTC)";
// Show ClientWorker that aren't running properly if cboxShowAll not checked
List<ClientWorker> workers;
workers = cboxShowAll.Checked ? _ClientWorkers : _ClientWorkers.FindAll(delegate (ClientWorker w) { return (w.Status != ChamberStatus.Running); });
if (workers.Count == 0)
{
dgvChambers.Visible = false;
return;
}
dgvChambers.Visible = true;
if (dgvChambers.Rows.Count != workers.Count)
{
while (dgvChambers.Rows.Count > 0)
dgvChambers.Rows.RemoveAt(0);
dgvChambers.Rows.Add(workers.Count);
}
int ConnTotal = workers.Count; // total amount of chambers
int ConnCounter = 0; // amount of chambers which are 'running'
int OfflineCounter = 0;
for (int i = 0; i < workers.Count; i++)
{
ClientWorker cw = workers[i];
dgvChambers[0, i].Value = String.Format("{0:00000}", cw.Chamber.MIDS); // MIDS ID of node
dgvChambers[1, i].Value = cw.Chamber.Network; // IP of node
dgvChambers[2, i].Value = cw.Status.ToText(); // Communication status with node
if (cw.Status.ToText() == "Running") ConnCounter++;
// Console.WriteLine(cw.Status.ToText().ToString());
if (cw.Status.ToText() == "No connection") OfflineCounter++;
if (cw.LastHTTP < new DateTime(2000, 1, 1))
dgvChambers[3, i].Value = "-";
else
dgvChambers[3, i].Value = cw.LastHTTP.ToString();
}
try
{
if (OfflineCounter > 1 ) // show panel stating that more than 2 nodes are offline!
{
pnlNodesOffline.Visible = true;
}
if (OfflineCounter <= 1) // show panel stating that more than 2 nodes are offline!
{
pnlNodesOffline.Visible = false;
}
}
catch { }
double ConnPercentageDouble = ((double)ConnCounter / (double)ConnTotal) * 100.0; // percentage 'running' nodes (double)
int ConnPercentageInt = (int)ConnPercentageDouble; // percentage 'running' nodes (int)
PercProgress.Maximum = 100;
PercProgress.Step = 1;
PercProgress.Value = ConnPercentageInt;
statusPercentage.Text = ConnPercentageInt.ToString() + "%";
}
private void FeanorClient_FormClosing(object sender, FormClosingEventArgs e)
{
// Stop workers
foreach (ClientWorker cw in _ClientWorkers)
cw.Stop();
}
private void cboxShowAll_CheckedChanged(object sender, EventArgs e)
{
timer_Tick(null, null);
}
private void LastStartupTimer_Tick(object sender, EventArgs e)
{
List<ClientWorker> workers;
workers = cboxShowAll.Checked ? _ClientWorkers : _ClientWorkers.FindAll(delegate (ClientWorker w) { return (w.Status != ChamberStatus.Running); });
for (int i = 0; i < workers.Count; i++)
{
ClientWorker cw = workers[i];
string url;
string data;
url = "http://" + cw.Chamber.Network + ":8080/" + "startuptime";
DateTime lastStartup;
try
{
using (WebClient client = new WebClient())
{
data = client.DownloadString(url);
lastStartup = Time.UnixToDatetime(int.Parse(data));
//Console.WriteLine(lastStartup.ToLocalTime());
dgvChambers[4, i].Value = lastStartup.ToLocalTime().ToString();
}
}
catch
{
// Continue with next object, ignoring exception
}
}
}
private void UpdateRaspberryTime_Tick(object sender, EventArgs e)
{
List<ClientWorker> workers;
workers = cboxShowAll.Checked ? _ClientWorkers : _ClientWorkers.FindAll(delegate (ClientWorker w) { return (w.Status != ChamberStatus.Running); });
for (int i = 0; i < workers.Count; i++) // for all chambers
{
ClientWorker cw = workers[i];
// Construct unix timestamp string
string http = "<time>,";
Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds;
http += unixTimestamp.ToString();
http += ",</time>";
// Send unix timestamp string to RPI
try
{
using (WebClient client = new WebClient())
{
string URL = "http://" + cw.Chamber.Network + ":8080/";
string url = client.UploadString(URL, http);
}
}
catch
{
}
}
}
private void lblStatus_Click(object sender, EventArgs e)
{
}
private void PercProgress_Click(object sender, EventArgs e)
{
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
private void label1_Click(object sender, EventArgs e)
{
}
private void btnDismiss_Click(object sender, EventArgs e)
{
pnlNodesOffline.Visible = false;
}
private void timerSaveStatusPage_Tick(object sender, EventArgs e)
{
List<ClientWorker> workers;
workers = cboxShowAll.Checked ? _ClientWorkers : _ClientWorkers.FindAll(delegate (ClientWorker w) { return (w.Status != ChamberStatus.Running); });
for (int i = 0; i < workers.Count; i++)
{
ClientWorker cw = workers[i];
string url;
string data;
url = "http://" + cw.Chamber.Network + ":8080/" + "status";
try
{
using (WebClient client = new WebClient())
{
data = client.DownloadString(url);
string fileName = $"Node_{cw.Chamber.MIDS}_status.html";
string outputDirectory = "\\\\silicium\\projects\\2020\\P201339\\sub1\\4. Software\\8. Nodestatus";
Directory.CreateDirectory(outputDirectory);
string filePath = Path.Combine(outputDirectory, fileName);
File.WriteAllText(filePath, data);
}
}
catch
{
// Continue with next object, ignoring exception
}
}
}
}
}

223
FeanorClient/Client.resx Normal file
View File

@@ -0,0 +1,223 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="dgvChambersColMIDS.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dgvChambersColNetwork.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dgvChambersColStatus.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="timer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>97, 17</value>
</metadata>
<metadata name="contextMenuStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>252, 17</value>
</metadata>
<metadata name="errorProvider1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>407, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAMDUAAAEACADADwAAFgAAACgAAAAwAAAAagAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAQAAAAMAAAAAAAEABAAAAAAAAgALAAAAAAADAA4AAAAEAQAAAAAJAAECBQAAAgcAAAEMAAAB
DQAdAwAAAAMKAAAAFwAAAhEAAAYGABEFBQAnBQEAAAEcAB4JAAAACwoAAAYcACAMAAAqDAAAOg8AAAMM
GgAaDw8AMhUAAAoTHgAKFxcAOBwAABkZGQAGFykABBcqAD0hBAAVHScABRwyAEQpCwBLKw8AOSsgADgx
JQAWLUYANzcgADk1KwBaOxsAZz0TAEI2NgArNkEARDsuACo4SQBRPiwAMDw8ADU5RgA/P0QAXEM0ACc9
YQAoQGMAb04uAGFNOgBSTEIAbVI7ACxKbgBWVEsAWVtoAEtccAB4ZkwAVV5zAD1fdwBgZmYATWR1AEhi
fQBsZ2QAX2dqAFNmeQBsbGYAi3BVAE1ohABtb28Ak3hKAFpvjAB2dnEAeHh4AIB6cQB5enoAenp6AF93
lwB4go0AZoKTAHSFkwCSiYQAX4mVAGKJlwCmknAAeI6YAHOMoAB0jaEAZ4yqAGWOqgCDk6wAm5iWAKmZ
lQCIlrEAuqKKAJqeogCMna0AqqOUAIOgrwCQo6MAvqaSAK2kngCHobwAnKanALWpmwCSqb0AuK+hAJCn
xgCnrbAAy7WXAM+zngCTq8kAuratAL+5sgDAurIAoLfPAJ+7yAC/vr4Aur/AALC/xQDTxK8AtsDFAMHB
wQDBwcIArb7SALO/zgDcyKwAw8PDAMTFxQDFxcUAxsbFAMfHxwDYy7YA2My4AMjIygDbzbYArMrXAL7K
1wDb0bwAu8vfAMLO1ADf0sAA3dLBALLO2gC6zdwA4NW6ALjP3QDe08cAxdDaANnV0ADf18gAztPhAOXb
yADQ2N0A6drRANLZ4QDm3NMA1treAOnd0QDi3NgAytroAODc3ADZ3d0A7N/aANDd7wDv4doA093wAPLj
1wDk490A9OTbANjk6wDq5+MA9erZAOno5QD06twA4+ntAPTr6wDp6/IA7OzuAPPx7QDq7/YA+vPlAOvw
9wD69esA+vXwAPX19QD39vIA9/bzAPP1+ADs9foA8PX6APb29gD39/cA8fb8APf4+ADs+PsA+Pj4APb3
/AD6+fUA8Pj9APz78wD2+fwA7fn/APH5/gD6+vkA7fr/AP77+AD2+v8A+vv8APz8+wD6/PwA/Pz8AP38
/AD6/P0A+/z9APj8/gD5/P4A+vz+APr9/QD+/f0A/P3+AP/++wD//vwA//79APb//wD3//8A///9APr/
/wD///4A/P//AP3//wD+//8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09N/OzMvLy8zQ3fT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9L2Ya1c3IQAAACMyVmd9rdL09PT09PT09PT09PT09PT09PT09PT09PT09PT09OGjYTgHAAAAAAAAAAAA
AAAAHkJttOD09PT09PT09PT09PT09PT09PT09PT09PT0tlwNAAAAAAAAAAAAAAAAAAAAAAAAF5n09PT0
9PT09PT09PT09PT09PT09PT09OWJNQAAAAAAAAAAAAAAAAAAAAAAAAAACZD09PT09PT09PT09PT09PT0
9PT09PT023URAAAAAAAAAAAAAAAAAAAAAAAAAAAACZD09PT09PT09PT09PT09PT09PT09PTjch0AAAAA
AAAAAAAUP05UWFVRSDkTAAAACZD09PT09PT09PT09PT09PT09PT09PGACgAAAAAAAAAANnGrv+709PT0
5r6ueEYLCZD09PT09PT09PT09PT09PT09PT09KwtAAAAAAAAADR2xvT09PT09PT09PT09OKlWpH09PT0
9PT09PT09PT09PT09PT011AAAAAAAAAAPajw9PT09PT09PT09PT09PT03sf09PT09PT09PT09PT09PT0
9PT0iBAAAAAAAABFuvT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PTKSgAAAAAAACqz
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSeFgAAAAAAGoTw9PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PRkAAAAAAAAT9T09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09Nk8AAAAAAAEk/T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9LIlAAAAAAAxw/T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09JsSAAAAAABg6fT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09HsDAAAAAAF69PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT082YAAAAAAA+d9PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT072IAAAAAAB+q9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
7F4AAAAAACax9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT07V8AAAAAACm19PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT072MAAAAAACKv9PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09GkAAAAAABuk9PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09HcAAAAAAAiK9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9JQOAAAAAABw8PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LAkAAAAAABS2vT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09NY7AAAAAAAcuPT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PRlAAAAAAAAefT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PSXGQAAAAAAQMH09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PTJRwAAAAAABmrr9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0fwwAAAAAABWW
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0z0EAAAAAAAA6pvT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09JwoAAAAAAAAMJ/q9PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09ORuBwAAAAAAACt0xPT09PT09PT09PT09PTVlaL09PT09PT09PT09PT09PT0
9PT09PTTWQAAAAAAAAAAPny38PT09PT09PTyu4NNApD09PT09PT09PT09PT09PT09PT09PT0wFMAAAAA
AAAAAAEsS2iBho6Hgm9MMwAACZD09PT09PT09PT09PT09PT09PT09PT09MJbBQAAAAAAAAAAAAAAAAAA
AAAAAAAACZD09PT09PT09PT09PT09PT09PT09PT09PTNbCcAAAAAAAAAAAAAAAAAAAAAAAAACZD09PT0
9PT09PT09PT09PT09PT09PT09PT06KBEAAAAAAAAAAAAAAAAAAAAAAAACZD09PT09PT09PT09PT09PT0
9PT09PT09PT09PTIhUMgAAAAAAAAAAAAAAAAAAAAL5r09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9NGnc0kYAAAAAAAAAAAALl1+ufT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09NzFqZKMi4uN
j6G82Of09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</value>
</data>
<metadata name="LastStartupTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>537, 17</value>
</metadata>
<metadata name="UpdateRaspberryTime.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>681, 17</value>
</metadata>
<metadata name="timerSaveStatusPage.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>851, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,168 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using Maser.Feanor.Model;
using Maser.Feanor.Biz;
using Maser.Feanor.Server;
using System.Net;
namespace Maser.Feanor.Client
{
public class ClientWorker
{
public ClientWorker(Chamber Chamber)
{
_Chamber = Chamber;
ThreadPool.SetMaxThreads(1000, 1000);
_thread = null;
_status = ChamberStatus.Init;
try
{
_Server = Servers.GetInstanceByChamber(_Chamber);
}
catch (Exception ex)
{
string s = "class ClientWorker->Servers.GetInstanceByChamber() (chamber: " + _Chamber.ToString() + ")\n Exception: " + ex.Message;
throw new Exception(s);
}
}
private Thread _thread;
public ChamberStatus Status { get { return _status; } }
private ChamberStatus _status;
private Boolean _isKicking;
public DateTime LastKick { get { return _lastKick; } }
private DateTime _lastKick;
public DateTime LastHTTP { get { return _LastHTTP; } }
private DateTime _LastHTTP;
private DateTime _LastDBWrite; // Used for detecting idling of server
Int32 _KickIntervalms = 60000; // Normal interval for contenttoclient request --> 1 minute
Int32 interval = 5000; // Interval for first contenttoclient request --> 5 seconds
private Server.Server _Server;
public Server.Server Server { get { return _Server; } }
private Chamber _Chamber;
public Chamber Chamber { get { return _Chamber; } }
public bool IsRunning
{
get
{
return (_thread != null) && _thread.IsAlive && _isKicking;
}
}
public bool Start()
{
if (!IsRunning)
{
_status = ChamberStatus.Initializing;
_thread = new Thread(new ThreadStart(ThreadFunction));
_thread.Start();
return true;
}
return false;
}
public bool Stop()
{
DateTime OnStop = DateTime.Now;
_status = ChamberStatus.AbortRequested;
// De-set _isStarted and wait max 10 seconds for result.
while ((_isKicking) && (OnStop.AddSeconds(10) > DateTime.Now))
Thread.Sleep(100);
if (_isKicking)
{
_thread.Abort();
_isKicking = false;
return _thread.Join(2000);
}
return !_isKicking;
}
private void ThreadFunction()
{
// Send the time of the Feanor client to the server on startup
try
{
if (!_Server.WriteDatetime(Time.UTC) || !_Server.WriteSensors())
_status = ChamberStatus.NoConn;
}
catch { _status = ChamberStatus.NoConn; }
Results resultBiz = new Results();
_lastKick = DateTime.Now;
while (_status != ChamberStatus.AbortRequested && ((Thread.CurrentThread.ThreadState & System.Threading.ThreadState.AbortRequested) == 0))
{
// Try to read from server every _lastKick milliseconds
if (DateTime.Now > _lastKick.AddMilliseconds(interval)) // was: _KickIntervalms is het /contenttoclient interval! (nu 1 min!)
{
interval = _KickIntervalms;
_lastKick = DateTime.Now;
if (_Server.Read())
{
_LastHTTP = DateTime.Now;
_status = ChamberStatus.Running;
if (_Server.Results.Count > 0)
{
if(_Server.Chamber.Humidity == true)
{
resultBiz.Add(_Server.Results); // stuurt de resultaten naar de SQL DB (Results)
}
else
{
resultBiz.AddOudeHal(_Server.Results); // stuurt de resultaten naar de SQL DB (Results)
}
_LastDBWrite = DateTime.Now;
}
if (DateTime.Now > _LastDBWrite.AddSeconds(_Chamber.Interval * 2))
_status = ChamberStatus.Idle;
}
else
_status = ChamberStatus.NoConn;
}
// It might be interesting to periodically update the calibration and sensor lists in the server.
// It might be interesting to periodically update the calibration and sensor lists in the server.
// _Server.SetSensorsAndCalibrations();
_isKicking = true;
Thread.Sleep(250);
}
_isKicking = false;
_status = ChamberStatus.Aborted;
}
}
}

View File

@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{750F6283-ED36-4BA6-89C3-943E8A858E41}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Maser.Feanor.Client</RootNamespace>
<AssemblyName>FeanorClient</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<TargetFrameworkProfile />
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<LangVersion>8.0</LangVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<LangVersion>8.0</LangVersion>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>C.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<NoWin32Manifest>true</NoWin32Manifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="HarfBuzzSharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\HarfBuzzSharp.7.3.0.3\lib\net462\HarfBuzzSharp.dll</HintPath>
</Reference>
<Reference Include="LiveCharts, Version=0.9.7.0, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
<HintPath>..\packages\LiveCharts.0.9.7\lib\net45\LiveCharts.dll</HintPath>
</Reference>
<Reference Include="LiveCharts.WinForms, Version=0.9.7.1, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
<HintPath>..\packages\LiveCharts.WinForms.0.9.7.1\lib\net45\LiveCharts.WinForms.dll</HintPath>
</Reference>
<Reference Include="LiveCharts.Wpf, Version=0.9.7.0, Culture=neutral, PublicKeyToken=0bc1f845d1ebb8df, processorArchitecture=MSIL">
<HintPath>..\packages\LiveCharts.Wpf.0.9.7\lib\net45\LiveCharts.Wpf.dll</HintPath>
</Reference>
<Reference Include="Maser.Email">
<HintPath>\\silicium\software\MASER software\Source\LMS10\DLL\Maser.Email.dll</HintPath>
</Reference>
<Reference Include="OpenTK, Version=3.1.0.0, Culture=neutral, PublicKeyToken=bad199fe84eb3df4, processorArchitecture=MSIL">
<HintPath>..\packages\OpenTK.3.1.0\lib\net20\OpenTK.dll</HintPath>
</Reference>
<Reference Include="OpenTK.GLControl, Version=3.1.0.0, Culture=neutral, PublicKeyToken=bad199fe84eb3df4, processorArchitecture=MSIL">
<HintPath>..\packages\OpenTK.GLControl.3.1.0\lib\net20\OpenTK.GLControl.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="ScottPlot, Version=5.0.53.0, Culture=neutral, PublicKeyToken=86698dc10387c39e, processorArchitecture=MSIL">
<HintPath>..\packages\ScottPlot.5.0.53\lib\net462\ScottPlot.dll</HintPath>
</Reference>
<Reference Include="ScottPlot.WinForms, Version=5.0.53.0, Culture=neutral, PublicKeyToken=86698dc10387c39e, processorArchitecture=MSIL">
<HintPath>..\packages\ScottPlot.WinForms.5.0.53\lib\net462\ScottPlot.WinForms.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.2.88.9\lib\net462\SkiaSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.HarfBuzz, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.HarfBuzz.2.88.9\lib\net462\SkiaSharp.HarfBuzz.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Views.Desktop.Common, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.Views.Desktop.Common.2.88.9\lib\net462\SkiaSharp.Views.Desktop.Common.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Views.WindowsForms, Version=2.88.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\packages\SkiaSharp.Views.WindowsForms.2.88.9\lib\net462\SkiaSharp.Views.WindowsForms.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Core" />
<Reference Include="System.Drawing.Common, Version=4.0.0.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Drawing.Common.4.7.3\lib\net461\System.Drawing.Common.dll</HintPath>
</Reference>
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Xaml" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
<Reference Include="WindowsFormsIntegration" />
</ItemGroup>
<ItemGroup>
<Compile Include="ChamberStatus.cs" />
<Compile Include="Client.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Client.Designer.cs">
<DependentUpon>Client.cs</DependentUpon>
</Compile>
<Compile Include="ClientWorker.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Client.resx">
<DependentUpon>Client.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<None Include="OpenTK.dll.config" />
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Content Include="C.ico" />
<Content Include="Carc.ico" />
<Content Include="M.ico" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Maser.Feanor.Biz\Maser.Feanor.Biz.csproj">
<Project>{316710e0-2143-44cd-8779-a833a2987174}</Project>
<Name>Maser.Feanor.Biz</Name>
</ProjectReference>
<ProjectReference Include="..\Maser.Feanor\Maser.Feanor.Model.csproj">
<Project>{f96ec5eb-647c-405e-934f-08df688f55f8}</Project>
<Name>Maser.Feanor.Model</Name>
</ProjectReference>
<ProjectReference Include="..\Server\Server.csproj">
<Project>{ce8fb8af-6b3a-42d2-9808-e94790707e91}</Project>
<Name>Server</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.macOS.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.macOS.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.macOS.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.macOS.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.macOS.targets'))" />
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.Win32.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.Win32.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets'))" />
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.macOS.2.88.9\build\net462\SkiaSharp.NativeAssets.macOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.macOS.2.88.9\build\net462\SkiaSharp.NativeAssets.macOS.targets'))" />
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.Win32.2.88.9\build\net462\SkiaSharp.NativeAssets.Win32.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.Win32.2.88.9\build\net462\SkiaSharp.NativeAssets.Win32.targets'))" />
<Error Condition="!Exists('..\packages\HarfBuzzSharp.NativeAssets.Linux.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\HarfBuzzSharp.NativeAssets.Linux.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets'))" />
<Error Condition="!Exists('..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.9\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.9\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets'))" />
</Target>
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.Win32.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.Win32.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Win32.targets')" />
<Import Project="..\packages\SkiaSharp.NativeAssets.macOS.2.88.9\build\net462\SkiaSharp.NativeAssets.macOS.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.macOS.2.88.9\build\net462\SkiaSharp.NativeAssets.macOS.targets')" />
<Import Project="..\packages\SkiaSharp.NativeAssets.Win32.2.88.9\build\net462\SkiaSharp.NativeAssets.Win32.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.Win32.2.88.9\build\net462\SkiaSharp.NativeAssets.Win32.targets')" />
<Import Project="..\packages\HarfBuzzSharp.NativeAssets.Linux.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets" Condition="Exists('..\packages\HarfBuzzSharp.NativeAssets.Linux.7.3.0.3\build\net462\HarfBuzzSharp.NativeAssets.Linux.targets')" />
<Import Project="..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.9\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets" Condition="Exists('..\packages\SkiaSharp.NativeAssets.Linux.NoDependencies.2.88.9\build\net462\SkiaSharp.NativeAssets.Linux.NoDependencies.targets')" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
FeanorClient/M.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@@ -0,0 +1,25 @@
<configuration>
<dllmap os="linux" dll="opengl32.dll" target="libGL.so.1"/>
<dllmap os="linux" dll="glu32.dll" target="libGLU.so.1"/>
<dllmap os="linux" dll="openal32.dll" target="libopenal.so.1"/>
<dllmap os="linux" dll="alut.dll" target="libalut.so.0"/>
<dllmap os="linux" dll="opencl.dll" target="libOpenCL.so"/>
<dllmap os="linux" dll="libX11" target="libX11.so.6"/>
<dllmap os="linux" dll="libXi" target="libXi.so.6"/>
<dllmap os="linux" dll="SDL2.dll" target="libSDL2-2.0.so.0"/>
<dllmap os="osx" dll="opengl32.dll" target="/System/Library/Frameworks/OpenGL.framework/OpenGL"/>
<dllmap os="osx" dll="openal32.dll" target="/System/Library/Frameworks/OpenAL.framework/OpenAL" />
<dllmap os="osx" dll="alut.dll" target="/System/Library/Frameworks/OpenAL.framework/OpenAL" />
<dllmap os="osx" dll="libGLES.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="libGLESv1_CM.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="libGLESv2.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="opencl.dll" target="/System/Library/Frameworks/OpenCL.framework/OpenCL"/>
<dllmap os="osx" dll="SDL2.dll" target="libSDL2.dylib"/>
<!-- XQuartz compatibility (X11 on Mac) -->
<dllmap os="osx" dll="libGL.so.1" target="/usr/X11/lib/libGL.dylib"/>
<dllmap os="osx" dll="libX11" target="/usr/X11/lib/libX11.dylib"/>
<dllmap os="osx" dll="libXcursor.so.1" target="/usr/X11/lib/libXcursor.dylib"/>
<dllmap os="osx" dll="libXi" target="/usr/X11/lib/libXi.dylib"/>
<dllmap os="osx" dll="libXinerama" target="/usr/X11/lib/libXinerama.dylib"/>
<dllmap os="osx" dll="libXrandr.so.2" target="/usr/X11/lib/libXrandr.dylib"/>
</configuration>

22
FeanorClient/Program.cs Normal file
View File

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Maser.Feanor.Client
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FeanorClient());
}
}
}

View File

@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("FeanorClient")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("FeanorClient")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("750f6283-ed36-4ba6-89c3-943e8a858e41")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,63 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Maser.Feanor.Client.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Maser.Feanor.Client.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
}
}

View File

@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Maser.Feanor.Client.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}

View File

@@ -0,0 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles />
<Settings />
</SettingsFile>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="HarfBuzzSharp" version="7.3.0.3" targetFramework="net472" />
<package id="HarfBuzzSharp.NativeAssets.Linux" version="7.3.0.3" targetFramework="net472" />
<package id="HarfBuzzSharp.NativeAssets.macOS" version="7.3.0.3" targetFramework="net472" />
<package id="HarfBuzzSharp.NativeAssets.Win32" version="7.3.0.3" targetFramework="net472" />
<package id="LiveCharts" version="0.9.7" targetFramework="net472" />
<package id="LiveCharts.WinForms" version="0.9.7.1" targetFramework="net472" />
<package id="LiveCharts.Wpf" version="0.9.7" targetFramework="net472" />
<package id="OpenTK" version="3.1.0" targetFramework="net472" />
<package id="OpenTK.GLControl" version="3.1.0" targetFramework="net472" />
<package id="ScottPlot" version="5.0.53" targetFramework="net472" />
<package id="ScottPlot.WinForms" version="5.0.53" targetFramework="net472" />
<package id="SkiaSharp" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.HarfBuzz" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.NativeAssets.Linux.NoDependencies" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.NativeAssets.macOS" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.NativeAssets.Win32" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.Views.Desktop.Common" version="2.88.9" targetFramework="net472" />
<package id="SkiaSharp.Views.WindowsForms" version="2.88.9" targetFramework="net472" />
<package id="System.Buffers" version="4.5.1" targetFramework="net472" />
<package id="System.Drawing.Common" version="4.7.3" targetFramework="net472" />
<package id="System.Memory" version="4.5.5" targetFramework="net472" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.3" targetFramework="net472" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net472" />
</packages>

6
FeanorConfig/App.config Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

BIN
FeanorConfig/C.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -0,0 +1,74 @@

namespace FeanorConfig
{
partial class CalibrationHelpPage
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CalibrationHelpPage));
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.SuspendLayout();
//
// richTextBox1
//
this.richTextBox1.BackColor = System.Drawing.SystemColors.AppWorkspace;
this.richTextBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.richTextBox1.ForeColor = System.Drawing.SystemColors.Menu;
this.richTextBox1.Location = new System.Drawing.Point(12, 12);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(587, 344);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
this.richTextBox1.TextChanged += new System.EventHandler(this.richTextBox1_TextChanged);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(61, 4);
this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.contextMenuStrip1_Opening);
//
// CalibrationHelpPage
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.Gray;
this.ClientSize = new System.Drawing.Size(611, 371);
this.Controls.Add(this.richTextBox1);
this.Name = "CalibrationHelpPage";
this.Text = "CalibrationHelpPage";
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
}
}

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace FeanorConfig
{
public partial class CalibrationHelpPage : Form
{
public CalibrationHelpPage()
{
InitializeComponent();
}
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
}
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
}
}
}

View File

@@ -0,0 +1,137 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="richTextBox1.Text" xml:space="preserve">
<value>When calibration is enabled, CalibratedValue and SensorValue will be used by the sensor.
When calibration is disabled, standard values will be used by the sensor. (gain = 1 and offset = 0)
CalibratedValue | SensorValue
------------------------------------------------------------------------
28.56 | 28.0 (Low)
169.71 | 169.0 (High)
c0 is the calculated offset of the calibration, while c1 is the calculated gain.
SensorValue column contains the values as read out by the sensor currently in calibration (is).
CalibratedValue column contains values as read out by calibrated equipment (should be).</value>
</data>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

Some files were not shown because too many files have changed in this diff Show More