uuu
uuu (Universal Update Utility), mfgtools 3.0
Loading...
Searching...
No Matches
buffer.h File Reference
#include <atomic>
#include <cassert>
#include <condition_variable>
#include <memory>
#include <mutex>
#include <thread>
#include <vector>
#include <map>
#include <queue>
#include "liberror.h"
#include <cstring>
#include <sys/mman.h>
#include <fcntl.h>
#include <unistd.h>

Go to the source code of this file.

Classes

class  FragmentBlock
class  DataBuffer
class  FileBuffer

Macros

#define FILEBUFFER_FLAG_LOADED_BIT   0x1
#define FILEBUFFER_FLAG_KNOWN_SIZE_BIT   0x2
#define FILEBUFFER_FLAG_ERROR_BIT   0x4
#define FILEBUFFER_FLAG_NEVER_FREE   0x8
#define FILEBUFFER_FLAG_PARTIAL_RELOADABLE   0x10
#define FILEBUFFER_FLAG_SEG_DONE   0x20
#define FILEBUFFER_FLAG_LOADED   (FILEBUFFER_FLAG_LOADED_BIT|FILEBUFFER_FLAG_KNOWN_SIZE_BIT)
#define FILEBUFFER_FLAG_KNOWN_SIZE   FILEBUFFER_FLAG_KNOWN_SIZE_BIT

Functions

std::shared_ptr< FileBufferget_file_buffer (std::string filename, bool async=false)
bool check_file_exist (std::string filename, bool start_async_load=true)
void set_current_dir (const std::string &dir)
bool IsMBR (std::shared_ptr< DataBuffer > p)
size_t ScanTerm (std::shared_ptr< DataBuffer > p, size_t &pos, size_t offset=512, size_t limited=0x800000)
void clean_up_filemap ()

Macro Definition Documentation

◆ FILEBUFFER_FLAG_ERROR_BIT

#define FILEBUFFER_FLAG_ERROR_BIT   0x4

◆ FILEBUFFER_FLAG_KNOWN_SIZE

#define FILEBUFFER_FLAG_KNOWN_SIZE   FILEBUFFER_FLAG_KNOWN_SIZE_BIT

◆ FILEBUFFER_FLAG_KNOWN_SIZE_BIT

#define FILEBUFFER_FLAG_KNOWN_SIZE_BIT   0x2

◆ FILEBUFFER_FLAG_LOADED

#define FILEBUFFER_FLAG_LOADED   (FILEBUFFER_FLAG_LOADED_BIT|FILEBUFFER_FLAG_KNOWN_SIZE_BIT)

◆ FILEBUFFER_FLAG_LOADED_BIT

#define FILEBUFFER_FLAG_LOADED_BIT   0x1

◆ FILEBUFFER_FLAG_NEVER_FREE

#define FILEBUFFER_FLAG_NEVER_FREE   0x8

◆ FILEBUFFER_FLAG_PARTIAL_RELOADABLE

#define FILEBUFFER_FLAG_PARTIAL_RELOADABLE   0x10

◆ FILEBUFFER_FLAG_SEG_DONE

#define FILEBUFFER_FLAG_SEG_DONE   0x20

Function Documentation

◆ check_file_exist()

bool check_file_exist ( std::string filename,
bool start_async_load = true )

◆ clean_up_filemap()

void clean_up_filemap ( )

◆ get_file_buffer()

std::shared_ptr< FileBuffer > get_file_buffer ( std::string filename,
bool async = false )

◆ IsMBR()

bool IsMBR ( std::shared_ptr< DataBuffer > p)

◆ ScanTerm()

size_t ScanTerm ( std::shared_ptr< DataBuffer > p,
size_t & pos,
size_t offset = 512,
size_t limited = 0x800000 )

◆ set_current_dir()

void set_current_dir ( const std::string & dir)