Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

StreamPeerGZIP

Sperimentale: This class may be changed or removed in future versions.

Eredita: StreamPeer < RefCounted < Object

Un peer di flusso che gestisce la compressione/decompressione di GZIP e deflate.

Descrizione

Questa classe consente di comprimere o decomprimere dati attraverso GZIP/deflate con un flusso continuo. Ciò è particolarmente utile quando si comprimono o decomprimono file che devono essere inviati tramite la rete senza doverli allocare tutti in memoria.

Dopo aver avviato il flusso tramite start_compression() (o start_decompression()), la chiamata a StreamPeer.put_partial_data() su questo stream comprimerà (o decomprimerà) i dati, scrivendoli nel buffer interno. La chiamata a StreamPeer.get_available_bytes() restituirà i byte in sospeso nel buffer interno e StreamPeer.get_partial_data() recupererà i byte compressi (o decompressi) da esso. Quando il flusso ha terminato, è necessario chiamare finish() per assicurarsi che il buffer interno venga svuotato correttamente (assicurarsi di chiamare StreamPeer.get_available_bytes() l'ultima volta per verificare se è necessario leggere altri dati dopo).

Metodi

void

clear()

Error

finish()

Error

start_compression(use_deflate: bool = false, buffer_size: int = 65535)

Error

start_decompression(use_deflate: bool = false, buffer_size: int = 65535)


Descrizioni dei metodi

void clear() 🔗

Cancella questo flusso, ripristinando lo stato interno.


Error finish() 🔗

Finalizza il flusso, comprimendo qualsiasi blocco bufferizzato rimasto.

È necessario chiamarlo solo durante la compressione.


Error start_compression(use_deflate: bool = false, buffer_size: int = 65535) 🔗

Avvia il flusso in modalità di compressione con un buffer di dimensione buffer_size, se use_deflate è true utilizza deflate invece di GZIP.


Error start_decompression(use_deflate: bool = false, buffer_size: int = 65535) 🔗

Avvia il flusso in modalità di decompressione con un buffer di dimensione buffer_size, se use_deflate è true utilizza deflate invece di GZIP.