mirror of
https://github.com/cccb/servicepoint.git
synced 2025-01-18 10:00:14 +01:00
add uniffi compression code, clone
add uniffi clone
This commit is contained in:
parent
18f1ccb2dc
commit
03aa432655
|
@ -433,6 +433,10 @@ static class _UniFFILib {
|
|||
IntPtr ptr,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BitVecSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_bitvec_clone(BitVecSafeHandle @other,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BitVecSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_bitvec_load(RustBuffer @data,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
@ -462,6 +466,10 @@ static class _UniFFILib {
|
|||
IntPtr ptr,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BitmapSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_bitmap_clone(BitmapSafeHandle @other,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BitmapSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_bitmap_load(ulong @width,ulong @height,RustBuffer @data,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
@ -499,6 +507,10 @@ static class _UniFFILib {
|
|||
IntPtr ptr,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BrightnessGridSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_brightnessgrid_clone(BrightnessGridSafeHandle @other,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern BrightnessGridSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_brightnessgrid_load(ulong @width,ulong @height,RustBuffer @data,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
@ -533,23 +545,23 @@ static class _UniFFILib {
|
|||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear(ulong @offset,BitVecSafeHandle @bitmap,ref RustCallStatus _uniffi_out_err
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear(ulong @offset,BitVecSafeHandle @bitmap,RustBuffer @compression,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_and(ulong @offset,BitVecSafeHandle @bitmap,ref RustCallStatus _uniffi_out_err
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_and(ulong @offset,BitVecSafeHandle @bitmap,RustBuffer @compression,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_or(ulong @offset,BitVecSafeHandle @bitmap,ref RustCallStatus _uniffi_out_err
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_or(ulong @offset,BitVecSafeHandle @bitmap,RustBuffer @compression,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_win(ulong @offsetX,ulong @offsetY,BitmapSafeHandle @bitmap,ref RustCallStatus _uniffi_out_err
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_win(ulong @offsetX,ulong @offsetY,BitmapSafeHandle @bitmap,RustBuffer @compression,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_xor(ulong @offset,BitVecSafeHandle @bitmap,ref RustCallStatus _uniffi_out_err
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_xor(ulong @offset,BitVecSafeHandle @bitmap,RustBuffer @compression,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
|
@ -564,6 +576,10 @@ static class _UniFFILib {
|
|||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_clear(ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_clone(CommandSafeHandle @other,ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern CommandSafeHandle uniffi_servicepoint_binding_uniffi_fn_constructor_command_fade_out(ref RustCallStatus _uniffi_out_err
|
||||
);
|
||||
|
@ -877,6 +893,10 @@ static class _UniFFILib {
|
|||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_method_connection_send(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_clone(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_load(
|
||||
);
|
||||
|
@ -885,6 +905,10 @@ static class _UniFFILib {
|
|||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_new(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_clone(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_load(
|
||||
);
|
||||
|
@ -897,6 +921,10 @@ static class _UniFFILib {
|
|||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_new_max_sized(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_brightnessgrid_clone(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_brightnessgrid_load(
|
||||
);
|
||||
|
@ -937,6 +965,10 @@ static class _UniFFILib {
|
|||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_command_clear(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_command_clone(
|
||||
);
|
||||
|
||||
[DllImport("servicepoint_binding_uniffi")]
|
||||
public static extern ushort uniffi_servicepoint_binding_uniffi_checksum_constructor_command_fade_out(
|
||||
);
|
||||
|
@ -1057,6 +1089,12 @@ static class _UniFFILib {
|
|||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_method_connection_send` checksum `23796`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_clone();
|
||||
if (checksum != 123) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_clone` checksum `123`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_load();
|
||||
if (checksum != 48913) {
|
||||
|
@ -1069,6 +1107,12 @@ static class _UniFFILib {
|
|||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_bitvec_new` checksum `11865`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_clone();
|
||||
if (checksum != 57298) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_clone` checksum `57298`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_load();
|
||||
if (checksum != 24109) {
|
||||
|
@ -1087,6 +1131,12 @@ static class _UniFFILib {
|
|||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_bitmap_new_max_sized` checksum `63762`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_brightnessgrid_clone();
|
||||
if (checksum != 33422) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_brightnessgrid_clone` checksum `33422`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_brightnessgrid_load();
|
||||
if (checksum != 24788) {
|
||||
|
@ -1101,32 +1151,32 @@ static class _UniFFILib {
|
|||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear();
|
||||
if (checksum != 14881) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear` checksum `14881`, library returned `{checksum}`");
|
||||
if (checksum != 18079) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear` checksum `18079`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_and();
|
||||
if (checksum != 7352) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_and` checksum `7352`, library returned `{checksum}`");
|
||||
if (checksum != 18147) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_and` checksum `18147`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_or();
|
||||
if (checksum != 7046) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_or` checksum `7046`, library returned `{checksum}`");
|
||||
if (checksum != 44912) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_or` checksum `44912`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_win();
|
||||
if (checksum != 51700) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_win` checksum `51700`, library returned `{checksum}`");
|
||||
if (checksum != 24563) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_win` checksum `24563`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_xor();
|
||||
if (checksum != 54209) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_xor` checksum `54209`, library returned `{checksum}`");
|
||||
if (checksum != 54278) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_bitmap_linear_xor` checksum `54278`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
|
@ -1147,6 +1197,12 @@ static class _UniFFILib {
|
|||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_clear` checksum `11035`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_clone();
|
||||
if (checksum != 42249) {
|
||||
throw new UniffiContractChecksumException($"ServicePoint: uniffi bindings expected function `uniffi_servicepoint_binding_uniffi_checksum_constructor_command_clone` checksum `42249`, library returned `{checksum}`");
|
||||
}
|
||||
}
|
||||
{
|
||||
var checksum = _UniFFILib.uniffi_servicepoint_binding_uniffi_checksum_constructor_command_fade_out();
|
||||
if (checksum != 49231) {
|
||||
|
@ -1475,6 +1531,13 @@ public class BitVec: FFIObject<BitVecSafeHandle>, IBitVec {
|
|||
|
||||
|
||||
|
||||
public static BitVec Clone(BitVec @other) {
|
||||
return new BitVec(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_bitvec_clone(FfiConverterTypeBitVec.INSTANCE.Lower(@other), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static BitVec Load(byte[] @data) {
|
||||
return new BitVec(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
|
@ -1583,6 +1646,13 @@ public class Bitmap: FFIObject<BitmapSafeHandle>, IBitmap {
|
|||
|
||||
|
||||
|
||||
public static Bitmap Clone(Bitmap @other) {
|
||||
return new Bitmap(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_bitmap_clone(FfiConverterTypeBitmap.INSTANCE.Lower(@other), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Bitmap Load(ulong @width, ulong @height, byte[] @data) {
|
||||
return new Bitmap(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
|
@ -1698,6 +1768,13 @@ public class BrightnessGrid: FFIObject<BrightnessGridSafeHandle>, IBrightnessGri
|
|||
|
||||
|
||||
|
||||
public static BrightnessGrid Clone(BrightnessGrid @other) {
|
||||
return new BrightnessGrid(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_brightnessgrid_clone(FfiConverterTypeBrightnessGrid.INSTANCE.Lower(@other), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static BrightnessGrid Load(ulong @width, ulong @height, byte[] @data) {
|
||||
return new BrightnessGrid(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
|
@ -1756,38 +1833,38 @@ public class Command: FFIObject<CommandSafeHandle>, ICommand {
|
|||
|
||||
|
||||
|
||||
public static Command BitmapLinear(ulong @offset, BitVec @bitmap) {
|
||||
public static Command BitmapLinear(ulong @offset, BitVec @bitmap, CompressionCode @compression) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), ref _status)
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), FfiConverterTypeCompressionCode.INSTANCE.Lower(@compression), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Command BitmapLinearAnd(ulong @offset, BitVec @bitmap) {
|
||||
public static Command BitmapLinearAnd(ulong @offset, BitVec @bitmap, CompressionCode @compression) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_and(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), ref _status)
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_and(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), FfiConverterTypeCompressionCode.INSTANCE.Lower(@compression), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Command BitmapLinearOr(ulong @offset, BitVec @bitmap) {
|
||||
public static Command BitmapLinearOr(ulong @offset, BitVec @bitmap, CompressionCode @compression) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_or(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), ref _status)
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_or(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), FfiConverterTypeCompressionCode.INSTANCE.Lower(@compression), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Command BitmapLinearWin(ulong @offsetX, ulong @offsetY, Bitmap @bitmap) {
|
||||
public static Command BitmapLinearWin(ulong @offsetX, ulong @offsetY, Bitmap @bitmap, CompressionCode @compression) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_win(FfiConverterUInt64.INSTANCE.Lower(@offsetX), FfiConverterUInt64.INSTANCE.Lower(@offsetY), FfiConverterTypeBitmap.INSTANCE.Lower(@bitmap), ref _status)
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_win(FfiConverterUInt64.INSTANCE.Lower(@offsetX), FfiConverterUInt64.INSTANCE.Lower(@offsetY), FfiConverterTypeBitmap.INSTANCE.Lower(@bitmap), FfiConverterTypeCompressionCode.INSTANCE.Lower(@compression), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Command BitmapLinearXor(ulong @offset, BitVec @bitmap) {
|
||||
public static Command BitmapLinearXor(ulong @offset, BitVec @bitmap, CompressionCode @compression) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_xor(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), ref _status)
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_bitmap_linear_xor(FfiConverterUInt64.INSTANCE.Lower(@offset), FfiConverterTypeBitVec.INSTANCE.Lower(@bitmap), FfiConverterTypeCompressionCode.INSTANCE.Lower(@compression), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
|
@ -1813,6 +1890,13 @@ public class Command: FFIObject<CommandSafeHandle>, ICommand {
|
|||
));
|
||||
}
|
||||
|
||||
public static Command Clone(Command @other) {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
_UniFFILib.uniffi_servicepoint_binding_uniffi_fn_constructor_command_clone(FfiConverterTypeCommand.INSTANCE.Lower(@other), ref _status)
|
||||
));
|
||||
}
|
||||
|
||||
public static Command FadeOut() {
|
||||
return new Command(
|
||||
_UniffiHelpers.RustCall( (ref RustCallStatus _status) =>
|
||||
|
@ -1932,6 +2016,42 @@ class FfiConverterTypeConnection: FfiConverter<Connection, ConnectionSafeHandle>
|
|||
|
||||
|
||||
|
||||
public enum CompressionCode: int {
|
||||
|
||||
Uncompressed,
|
||||
Zlib,
|
||||
Bzip2,
|
||||
Lzma,
|
||||
Zstd
|
||||
}
|
||||
|
||||
class FfiConverterTypeCompressionCode: FfiConverterRustBuffer<CompressionCode> {
|
||||
public static FfiConverterTypeCompressionCode INSTANCE = new FfiConverterTypeCompressionCode();
|
||||
|
||||
public override CompressionCode Read(BigEndianStream stream) {
|
||||
var value = stream.ReadInt() - 1;
|
||||
if (Enum.IsDefined(typeof(CompressionCode), value)) {
|
||||
return (CompressionCode)value;
|
||||
} else {
|
||||
throw new InternalException(String.Format("invalid enum value '{0}' in FfiConverterTypeCompressionCode.Read()", value));
|
||||
}
|
||||
}
|
||||
|
||||
public override int AllocationSize(CompressionCode value) {
|
||||
return 4;
|
||||
}
|
||||
|
||||
public override void Write(CompressionCode value, BigEndianStream stream) {
|
||||
stream.WriteInt((int)value + 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public class ServicePointException: UniffiException {
|
||||
// Each variant is a nested class
|
||||
|
||||
|
|
|
@ -38,6 +38,11 @@ impl Bitmap {
|
|||
))
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn clone(other: &Arc<Self>) -> Arc<Self> {
|
||||
Self::internal_new(other.actual.read().unwrap().clone())
|
||||
}
|
||||
|
||||
pub fn set(&self, x: u64, y: u64, value: bool) {
|
||||
self.actual
|
||||
.write()
|
||||
|
|
|
@ -24,6 +24,11 @@ impl BitVec {
|
|||
Self::internal_new(servicepoint::BitVec::from_slice(&data))
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn clone(other: &Arc<Self>) -> Arc<Self> {
|
||||
Self::internal_new(other.actual.read().unwrap().clone())
|
||||
}
|
||||
|
||||
pub fn set(&self, index: u64, value: bool) {
|
||||
self.actual.write().unwrap().set(index as usize, value)
|
||||
}
|
||||
|
|
|
@ -33,6 +33,11 @@ impl BrightnessGrid {
|
|||
))
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn clone(other: &Arc<Self>) -> Arc<Self> {
|
||||
Self::internal_new(other.actual.read().unwrap().clone())
|
||||
}
|
||||
|
||||
pub fn set(&self, x: u64, y: u64, value: u8) {
|
||||
self.actual.write().unwrap().set(
|
||||
x as usize,
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
use crate::bitmap::Bitmap;
|
||||
use crate::bitvec::BitVec;
|
||||
use crate::brightness_grid::BrightnessGrid;
|
||||
use crate::compression_code::CompressionCode;
|
||||
use crate::errors::ServicePointError;
|
||||
use servicepoint::{CompressionCode, Origin};
|
||||
use servicepoint::Origin;
|
||||
use std::sync::Arc;
|
||||
|
||||
#[derive(uniffi::Object)]
|
||||
|
@ -48,14 +49,15 @@ impl Command {
|
|||
offset_x: u64,
|
||||
offset_y: u64,
|
||||
bitmap: &Arc<Bitmap>,
|
||||
compression: CompressionCode,
|
||||
) -> Arc<Self> {
|
||||
let origin = Origin::new(offset_x as usize, offset_y as usize);
|
||||
let bitmap = bitmap.actual.read().unwrap().clone();
|
||||
// TODO: compression codes
|
||||
let actual = servicepoint::Command::BitmapLinearWin(
|
||||
origin,
|
||||
bitmap,
|
||||
CompressionCode::Uncompressed,
|
||||
servicepoint::CompressionCode::try_from(compression as u16)
|
||||
.unwrap(),
|
||||
);
|
||||
Self::internal_new(actual)
|
||||
}
|
||||
|
@ -73,50 +75,71 @@ impl Command {
|
|||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn bitmap_linear(offset: u64, bitmap: &Arc<BitVec>) -> Arc<Self> {
|
||||
pub fn bitmap_linear(
|
||||
offset: u64,
|
||||
bitmap: &Arc<BitVec>,
|
||||
compression: CompressionCode,
|
||||
) -> Arc<Self> {
|
||||
let bitmap = bitmap.actual.read().unwrap().clone();
|
||||
// TODO: compression codes
|
||||
let actual = servicepoint::Command::BitmapLinear(
|
||||
offset as usize,
|
||||
bitmap,
|
||||
CompressionCode::Uncompressed,
|
||||
servicepoint::CompressionCode::try_from(compression as u16)
|
||||
.unwrap(),
|
||||
);
|
||||
Self::internal_new(actual)
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn bitmap_linear_and(offset: u64, bitmap: &Arc<BitVec>) -> Arc<Self> {
|
||||
pub fn bitmap_linear_and(
|
||||
offset: u64,
|
||||
bitmap: &Arc<BitVec>,
|
||||
compression: CompressionCode,
|
||||
) -> Arc<Self> {
|
||||
let bitmap = bitmap.actual.read().unwrap().clone();
|
||||
// TODO: compression codes
|
||||
let actual = servicepoint::Command::BitmapLinearAnd(
|
||||
offset as usize,
|
||||
bitmap,
|
||||
CompressionCode::Uncompressed,
|
||||
servicepoint::CompressionCode::try_from(compression as u16)
|
||||
.unwrap(),
|
||||
);
|
||||
Self::internal_new(actual)
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn bitmap_linear_or(offset: u64, bitmap: &Arc<BitVec>) -> Arc<Self> {
|
||||
pub fn bitmap_linear_or(
|
||||
offset: u64,
|
||||
bitmap: &Arc<BitVec>,
|
||||
compression: CompressionCode,
|
||||
) -> Arc<Self> {
|
||||
let bitmap = bitmap.actual.read().unwrap().clone();
|
||||
// TODO: compression codes
|
||||
let actual = servicepoint::Command::BitmapLinearOr(
|
||||
offset as usize,
|
||||
bitmap,
|
||||
CompressionCode::Uncompressed,
|
||||
servicepoint::CompressionCode::try_from(compression as u16)
|
||||
.unwrap(),
|
||||
);
|
||||
Self::internal_new(actual)
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn bitmap_linear_xor(offset: u64, bitmap: &Arc<BitVec>) -> Arc<Self> {
|
||||
pub fn bitmap_linear_xor(
|
||||
offset: u64,
|
||||
bitmap: &Arc<BitVec>,
|
||||
compression: CompressionCode,
|
||||
) -> Arc<Self> {
|
||||
let bitmap = bitmap.actual.read().unwrap().clone();
|
||||
// TODO: compression codes
|
||||
let actual = servicepoint::Command::BitmapLinearXor(
|
||||
offset as usize,
|
||||
bitmap,
|
||||
CompressionCode::Uncompressed,
|
||||
servicepoint::CompressionCode::try_from(compression as u16)
|
||||
.unwrap(),
|
||||
);
|
||||
Self::internal_new(actual)
|
||||
}
|
||||
|
||||
#[uniffi::constructor]
|
||||
pub fn clone(other: &Arc<Self>) -> Arc<Self> {
|
||||
Self::internal_new(other.actual.clone())
|
||||
}
|
||||
}
|
||||
|
|
14
crates/servicepoint_binding_uniffi/src/compression_code.rs
Normal file
14
crates/servicepoint_binding_uniffi/src/compression_code.rs
Normal file
|
@ -0,0 +1,14 @@
|
|||
#[repr(u16)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq, uniffi::Enum)]
|
||||
pub enum CompressionCode {
|
||||
/// no compression
|
||||
Uncompressed = 0x0,
|
||||
/// compress using flate2 with zlib header
|
||||
Zlib = 0x677a,
|
||||
/// compress using bzip2
|
||||
Bzip2 = 0x627a,
|
||||
/// compress using lzma
|
||||
Lzma = 0x6c7a,
|
||||
/// compress using Zstandard
|
||||
Zstd = 0x7a73,
|
||||
}
|
|
@ -4,5 +4,6 @@ mod bitmap;
|
|||
mod bitvec;
|
||||
mod brightness_grid;
|
||||
mod command;
|
||||
mod compression_code;
|
||||
mod connection;
|
||||
mod errors;
|
||||
|
|
Loading…
Reference in a new issue