Table of Contents

Namespace Hi3Helper.Plugin.Core.Utility

Classes

ComAsyncExtension

An extension contains tools to marshal plugin's Task to ComAsyncResult and vice versa.

GameManagerExtension

This extension provides a method to launch the game using the plugin's game launch mechanism if available.

GameManagerExtension.RunGameFromGameManagerContext

A context used to manage the game launch routine using plugin's functionality.

Mem

Contains tools for Memory management, including allocation, freeing and marshalling.

PluginFiles

Contains extensions related with Download operations and Copy-to routine.

PluginHttpClientBuilder

Creates an HttpClient based on the customizable settings.

PluginPInvokeExtension
RetryableCopyToStreamTask

Runs a retry-able task of Copy-to routine from Source to Target Stream.
This is suitable for Copy-to operation which involves a Stream from network related instances (for example: HttpClient) whether as source or target or both.

RetryableCopyToStreamTaskOptions

Sets the parameters used for running a task from RetryableCopyToStreamTask instance.

SpanHelpers
SpeedLimiterService

Provides a helper for using Speed Limiter Service.

StreamExtension

Provides extension methods for working with Stream objects and HttpClient.

Structs

DnsARecordResult

Unmanaged struct which contains a string which represents both IPv4 or IPv6.

FileHandle

A struct contains the pointer of the SafeFileHandle or the safe handle of the FileStream.

HResult

Delegates

GameManagerExtension.PrintGameLog
PluginFiles.ChecksumCheckDelegate

Delegate for checking if the asset's checksum matches the expected value.

PluginFiles.FileReadProgressDelegate

Delegate for reporting progress of file read operations.

RetryableCopyToStreamTask.ReadDelegate

Gets how many bytes being read per cycle from source Stream.

RetryableCopyToStreamTask.SourceStreamFactory

A delegate which creates a source Stream based on the last position of the download.