3b1f3301d6
Changes: - Added SharedMemory module for file-backed memory-mapped storage - Added MappingInfo, FileHeader, RecordState and TrackedRecord infrastructure - Replaced CSV-based serialization with binary struct serialization - Added DataStore initialization and shutdown lifecycle management - Added datastore mutex synchronization for multi-process access - Added shared-memory mapping configuration for all datastore entities - Added generic loadRecords and saveRecords template infrastructure - Added automatic datastore directory creation and .dat file storage - Updated configuration to use binary datastore files and initial capacities - Added enum underlying types for serialization compatibility - Added password masking support for login, registration and password change flows - Added Visual Studio project configuration for shared-memory components - Added datastore-owned record caches for runtime object management - Updated datastore APIs to return cached tracked-record collections by reference - Added generic cache refresh and cleanup infrastructure - Updated save operations to persist datastore caches directly - Added automatic cache cleanup during datastore destruction - Prepared datastore for multi-process shared-memory persistence
29 lines
659 B
C++
29 lines
659 B
C++
/*
|
|
File: MappingInfo.h
|
|
Description: Defines the MappingInfo structure used for
|
|
managing Windows file mapping operations.
|
|
Stores handles, mapped view pointer,
|
|
file metadata, and capacity information.
|
|
Author: Trenser
|
|
Created: 10-June-2026
|
|
*/
|
|
|
|
#pragma once
|
|
#include <windows.h>
|
|
#include <string>
|
|
|
|
struct MappingInfo
|
|
{
|
|
HANDLE fileHandle;
|
|
HANDLE mappingHandle;
|
|
void* mappedView;
|
|
std::string fileName;
|
|
size_t recordSize;
|
|
size_t mappedCapacity;
|
|
MappingInfo()
|
|
: fileHandle(NULL),
|
|
mappingHandle(NULL),
|
|
mappedView(nullptr),
|
|
recordSize(0),
|
|
mappedCapacity(0) {}
|
|
}; |