Blender V4.5
BLI_mmap.cc File Reference
#include "BLI_mmap.h"
#include "BLI_fileops.h"
#include "BLI_listbase.h"
#include "MEM_guardedalloc.h"
#include <cstring>
#include <csignal>
#include <cstdlib>
#include <sys/mman.h>
#include <unistd.h>

Go to the source code of this file.

Classes

struct  BLI_mmap_file
struct  error_handler_data

Functions

static void sigbus_handler (int sig, siginfo_t *siginfo, void *ptr)
static bool sigbus_handler_setup ()
static void sigbus_handler_add (BLI_mmap_file *file)
static void sigbus_handler_remove (BLI_mmap_file *file)
BLI_mmap_fileBLI_mmap_open (int fd)
bool BLI_mmap_read (BLI_mmap_file *file, void *dest, size_t offset, size_t length)
void * BLI_mmap_get_pointer (BLI_mmap_file *file)
size_t BLI_mmap_get_length (const BLI_mmap_file *file)
bool BLI_mmap_any_io_error (const BLI_mmap_file *file)
void BLI_mmap_free (BLI_mmap_file *file)

Variables

static struct error_handler_data error_handler = {{nullptr}}

Function Documentation

◆ BLI_mmap_any_io_error()

bool BLI_mmap_any_io_error ( const BLI_mmap_file * file)

◆ BLI_mmap_free()

◆ BLI_mmap_get_length()

◆ BLI_mmap_get_pointer()

◆ BLI_mmap_open()

◆ BLI_mmap_read()

bool BLI_mmap_read ( BLI_mmap_file * file,
void * dest,
size_t offset,
size_t length )

◆ sigbus_handler()

void sigbus_handler ( int sig,
siginfo_t * siginfo,
void * ptr )
static

◆ sigbus_handler_add()

void sigbus_handler_add ( BLI_mmap_file * file)
static

◆ sigbus_handler_remove()

void sigbus_handler_remove ( BLI_mmap_file * file)
static

◆ sigbus_handler_setup()

bool sigbus_handler_setup ( )
static

Variable Documentation

◆ error_handler