public void write_as_ulong(string bus_id, int device_address, ulong buffer, int buffer_length)
        {
            if (bus_id == null)
            {
                throw new ArgumentNullException(nameof(bus_id));
            }

            var buffer2 = ConverterPythonProxy.ULongToArray(buffer, buffer_length);

            _i2CBusService.Write(bus_id, device_address, buffer2.AsArraySegment());
        }
        public ulong write_read_as_ulong(string bus_id, int device_address, ulong write_buffer, int write_buffer_length, int read_buffer_length)
        {
            var writeBuffer2 = ConverterPythonProxy.ULongToArray(write_buffer, write_buffer_length);
            var readBuffer   = new byte[read_buffer_length];

            _i2CBusService.WriteRead(
                bus_id,
                device_address,
                writeBuffer2.AsArraySegment(),
                readBuffer.AsArraySegment());

            return(ConverterPythonProxy.ArrayToULong(readBuffer));
        }