ACMX 2.139.0
Dual-Backend Real-Time GPU Video Synthesis
Loading...
Searching...
No Matches
anonymous_namespace{program.cpp} Namespace Reference

Classes

struct  CacheHeader

Functions

static std::string cacheDirDefault ()
static std::string cacheFilePath (uint64_t key)
static uint64_t computeComputeProgramKeyFromText (const std::string &source)
static uint64_t computeProgramKeyFromFiles (const std::string &vsPath, const std::string &fsPath)
static uint64_t computeProgramKeyFromText (const std::string &vs, const std::string &fs)
static uint64_t fnv1a64_bytes (const void *data, size_t n)
static uint64_t fnv1a64_file (const std::string &filepath)
static uint64_t fnv1a64_str (const std::string &s)
static std::string glStr (GLenum e)
static uint64_t mix64 (uint64_t a, uint64_t b)
static bool readWholeFile (const std::string &path, std::vector< uint8_t > &out)
static bool saveProgramBinary (uint64_t key, GLuint prog)
static bool tryLoadProgramBinary (uint64_t key, GLuint &outProg)
static bool writeFileAtomic (const std::string &path, const void *data, size_t size)

Variables

static constexpr uint32_t kMagic = 0x53434143u
static constexpr uint16_t kVersion = 1

Function Documentation

◆ cacheDirDefault()

std::string anonymous_namespace{program.cpp}::cacheDirDefault ( )
static

Definition at line 117 of file program.cpp.

References cacheDirDefault().

Referenced by cacheDirDefault(), and cacheFilePath().

◆ cacheFilePath()

std::string anonymous_namespace{program.cpp}::cacheFilePath ( uint64_t key)
static

Definition at line 119 of file program.cpp.

References cacheDirDefault(), and cacheFilePath().

Referenced by cacheFilePath(), saveProgramBinary(), and tryLoadProgramBinary().

◆ computeComputeProgramKeyFromText()

uint64_t anonymous_namespace{program.cpp}::computeComputeProgramKeyFromText ( const std::string & source)
static

◆ computeProgramKeyFromFiles()

uint64_t anonymous_namespace{program.cpp}::computeProgramKeyFromFiles ( const std::string & vsPath,
const std::string & fsPath )
static

◆ computeProgramKeyFromText()

uint64_t anonymous_namespace{program.cpp}::computeProgramKeyFromText ( const std::string & vs,
const std::string & fs )
static

Definition at line 145 of file program.cpp.

References computeProgramKeyFromText(), fnv1a64_str(), glStr(), and mix64().

Referenced by computeProgramKeyFromText().

◆ fnv1a64_bytes()

uint64_t anonymous_namespace{program.cpp}::fnv1a64_bytes ( const void * data,
size_t n )
static

Definition at line 16 of file program.cpp.

References fnv1a64_bytes().

Referenced by fnv1a64_bytes(), and fnv1a64_str().

◆ fnv1a64_file()

uint64_t anonymous_namespace{program.cpp}::fnv1a64_file ( const std::string & filepath)
static

Definition at line 28 of file program.cpp.

References fnv1a64_file().

Referenced by computeProgramKeyFromFiles(), and fnv1a64_file().

◆ fnv1a64_str()

uint64_t anonymous_namespace{program.cpp}::fnv1a64_str ( const std::string & s)
static

◆ glStr()

std::string anonymous_namespace{program.cpp}::glStr ( GLenum e)
static

◆ mix64()

uint64_t anonymous_namespace{program.cpp}::mix64 ( uint64_t a,
uint64_t b )
static

◆ readWholeFile()

bool anonymous_namespace{program.cpp}::readWholeFile ( const std::string & path,
std::vector< uint8_t > & out )
static

Definition at line 75 of file program.cpp.

References readWholeFile().

Referenced by readWholeFile(), and tryLoadProgramBinary().

◆ saveProgramBinary()

◆ tryLoadProgramBinary()

◆ writeFileAtomic()

bool anonymous_namespace{program.cpp}::writeFileAtomic ( const std::string & path,
const void * data,
size_t size )
static

Definition at line 89 of file program.cpp.

References writeFileAtomic().

Referenced by saveProgramBinary(), and writeFileAtomic().

Variable Documentation

◆ kMagic

uint32_t anonymous_namespace{program.cpp}::kMagic = 0x53434143u
staticconstexpr

Definition at line 72 of file program.cpp.

Referenced by saveProgramBinary(), and tryLoadProgramBinary().

◆ kVersion

uint16_t anonymous_namespace{program.cpp}::kVersion = 1
staticconstexpr

Definition at line 73 of file program.cpp.

Referenced by saveProgramBinary(), and tryLoadProgramBinary().