Scaleform::SysAllocPaged::Info

Scaleform::SysAllocPaged::Info
struct Info {
  UPInt MinAlign;
  UPInt MaxAlign;
  UPInt Granularity;
  UPInt SysDirectThreshold;
  UPInt MaxHeapGranularity;
  bool HasRealloc;
};
Description

Structure providing information on the capabilities such as alignment and granularity of SysAllocPaged implementation.

Members
Members 
Description 
UPInt MinAlign; 
Minimum alignment that the system allocator will always apply to all of the allocations, independent of whether it is requested or not. For OS allocators, this will often be equal to the page size of the system. 
UPInt MaxAlign; 
Maximum alignment that will be supported by the allocator. For larger alignment requests, external granulator wrapper will fake alignment by making larger allocations. Set this value to 0 if your allocator supports alignment request; set this value to 1 byte if it doesn't support any alignment. 
UPInt Granularity; 
Allocation granularity that the system can handle efficiently; GFx will try to use at least this size for allocation requests. On Win32 it is at least 64K and must be a multiple of 64K. Granularity defines the size of the segments. Larger the granularity, less number of system requests will be performed. 
UPInt SysDirectThreshold; 
Defines the global size threshold, when not null. If the allocation size is greater or equal to SysDirectThreshold, it is redirected to the system, ignoring the granulator layer. 
UPInt MaxHeapGranularity; 
If not null, MaxHeapGranularity restricts the maximum possible heap granularity. In most cases, MaxHeapGranularity can reduce the system memory footprint for the price of more frequent segment alloc/free operations, which slows down the allocator. MaxHeapGranularity must be at least 4096 and a multiple of 4096. 
bool HasRealloc; 
Boolean flag that indicates whether or not SysAllocPaged::ReallocInPlace is implemented. This flag returns true if SysAllocPaged::ReallocInPlace is implemented otherwise false if the reallocation is not implemented. If SysAllocPaged::ReallocInPlace is not implemented, the allocator is still capable of reallocating memory but moving of data would occur more frequently. 
File

SF_SysAlloc.h