David Piuva fe0d26b2e7 Splitting up the texture test to see what goes wrong. 10 luni în urmă
..
DFPSR fe0d26b2e7 Splitting up the texture test to see what goes wrong. 10 luni în urmă
SDK 8ba2e9c9de Moved lots of code into an implementation folder. 10 luni în urmă
soundManagers 8ba2e9c9de Moved lots of code into an implementation folder. 10 luni în urmă
templates 5a2eee2f5f Replaced std::shared_ptr with dsr::Handle and introduced textures as separate types. 11 luni în urmă
test fe0d26b2e7 Splitting up the texture test to see what goes wrong. 10 luni în urmă
tools 06b4ae7d49 Running tests on MS-Windows using the Builder build system. 10 luni în urmă
windowManagers 8ba2e9c9de Moved lots of code into an implementation folder. 10 luni în urmă
README.md 321fddf72b Getting cache line width using system APIs. 10 luni în urmă
check.sh 06b4ae7d49 Running tests on MS-Windows using the Builder build system. 10 luni în urmă

README.md

Source folder

The source folder contains the framework, system dependent backends, code examples and tools.

System dependent code

Some of the code depends on different hardware and operating systems to abstract them away.

  • Source/DFPSR/api/fileAPI: The file API is implemented to hande file access on different operating systems.

  • Source/DFPSR/base/simd.h: The simd.h header is a SIMD abstraction layer that works without SIMD but can become faster for specific processor architectures by implementing the features.

  • Source/DFPSR/base/heap.cpp: The getCacheLineSize function depends on the operating system to get the cache line width for memory alignment, because aligning with cache lines is needed for thread safety and getting cache line width directly from hardware would require contemporary inline assembler hacks that will not work for future generations of hardware.

  • Source/windowManagers: Contains the integrations for displaying graphics and getting mouse and keyboard input on specific operating systems. These are selected based on the operating system in Source/DFPSR/DFPSR.DsrHead

  • Source/soundManagers: Contains the integrations for sound on specific operating systems. These are selected based on the operating system in Source/DFPSR/DFPSR.DsrHead