1.14.0.5
Hummingbird
A modern user interface library for games
cohtml::LibraryParams Struct Reference

Initialization parameters of the Hummingbird library. More...

Public Attributes

IAllocatorAllocator
 Memory allocator for all operations of the library. Must not be null.
 
Logging::Severity LoggingSeverity
 The Severity of the logging messages to show. Keep this to Info or more in Shipping builds. Excessive logging can hurt performance.
 
Logging::ILogHandler * LogHandler
 Handler provided by the application that will receive all logging messages. If null, the default log handler will be used that prints in a local file.
 
const char * WritableDirectory
 Path to a writable directory. This is optional if you provide your own log handler.
 
IFileSystemReaderFileSystemReader
 System reader used for loading local resources.
 
bool UseDedicatedLayoutThread
 Tells if the application will spawn a dedicated layout thread or the Layout will happen in the View::Advance method Doing Layout on a separate thread is recomended as it improves scalability and reduces time spent in the Main DOM thread. For more information please refer to the Documentation.
 
unsigned ResourceThreadsCountHint
 Tells the runtime how man threads will be used during the Library lifetime for Resource work. The parameter is important for work balancing and especially for video playback. The video decoder will try to use as many threads (generating tasks) as there are hinted in this variable. Hinting MORE threads than the actual number that will be used will lead to undefined behaviour and most likely deadlocks in the video decoder. If uncertain about how many threads will execute Resource tasks, please set this to 1 - the default.
 
const char * SharedLibraryLocation
 Sets where to look for the other shared libraries that CoHTML depends on Currently only usable on PS4. If set to nullptr, the working directory will be searched for module dependencies. More...
 
OnWorkAvailableFunc OnWorkAvailable
 The Task System will notify through this callback when work is availble. The tasks must be executed on a different thread.
 
void * OnWorkAvailableUserData
 This pointer will be passed to the OnWorkAvailable callback and can be used to hold any data the user needs to give context to the function.
 
PlatformSpecificParams PlatformParams
 Platform-specific parameters.
 
float PathTessellationThresholdRatio
 Sets the threshold ratio, which is used for determining whether to reuse old tessellated paths or tessellate new ones when changing the display size of paths (e.g. SVGs). If the threshold ratio is lower, then more paths will be tesselated, which will lead to a higher path visual quality, but also to increased memory usage. On the other hand, setting the threshold ratio to a higher value will result in reuse of more tesselated paths, which may cause lower path visual quality, because old tessellated paths are upscaled or downscaled in order to be reused. However, higher threshold value will lead to a decrease in the memory usage. More...
 
const char * DefaultStyleFontFamily
 Sets the default font family that will be used by all Elements in the Views. The default font style is analogous to setting the CSS property "font-family" of all elements to the value of this field.
 

Detailed Description

Initialization parameters of the Hummingbird library.

Member Data Documentation

◆ PathTessellationThresholdRatio

float cohtml::LibraryParams::PathTessellationThresholdRatio

Sets the threshold ratio, which is used for determining whether to reuse old tessellated paths or tessellate new ones when changing the display size of paths (e.g. SVGs). If the threshold ratio is lower, then more paths will be tesselated, which will lead to a higher path visual quality, but also to increased memory usage. On the other hand, setting the threshold ratio to a higher value will result in reuse of more tesselated paths, which may cause lower path visual quality, because old tessellated paths are upscaled or downscaled in order to be reused. However, higher threshold value will lead to a decrease in the memory usage.

Note
The default threshold ratio is 2.5, which means that if we have previously tessellated a path with size X, then we will reuse it if the size of the new one is 250% larger or smaller. This is done by upscaling ot downscaling the old tessellated path.
Threshold ratio less than or equal to 1 will cause tessellation on every size change.

◆ SharedLibraryLocation

const char* cohtml::LibraryParams::SharedLibraryLocation

Sets where to look for the other shared libraries that CoHTML depends on Currently only usable on PS4. If set to nullptr, the working directory will be searched for module dependencies.

Warning
Must end with a trailing slash.