add_buffer(char* name,void* buffer,long size)
Fügt einen benannten Buffer in das Engine Datei System. Wenn die Engine
danach
die Datei name öffnen soll, wird zuerst versucht, diese
aus dem Buffer zu lesen. Ist sie dort nicht vorhanden, wird sie von Festplatte
geladen. Dies erlaubt es, ein benutzerdefiniertes Dateisystem in einer externen
Sprache zu definieren.
Parameter:
name - Dateiname (max. 31 Zeichen).
buffer - Pointer auf einen Buffer mit dem Dateiinhalt, oder NULL,
um den Buffer aus dem Dateisystem zu entfernen.
size - Größe des Buffers in Bytes.
Bemerkungen:
- Dateien, auf die direkt zugegriffen wird - z.B. für den Media Player,
für DLLs, oder für file_open - können nicht von einem
benannten Buffer geladen werden.
- Die Anweisung ist für eine externe Programmiersprache gedacht und
benutzt deswegen char* und long anstatt STRING* und var.
- Der Buffer muss vom Heap oder per file_load allokiert werden. Er muss per
free explizit freigegeben werden, sobald er nicht mehr benutzt wird, spätestens
beim Beenden der Anwendung.
- Durch die Funktion add_new werden sämtliche Buffer entfernt.
Geschwindigkeit:
Mittel
Beispiel:
void* pTerrain = file_load("terrain.hmp",NULL,&size);
add_buffer("terrain1.hmp",pTerrain,size);
Siehe auch:
add_folder, add_new
► Aktuelle Version Online