cohtml::LibraryParamsWithExternalRenderingLibrary

Initialization parameters of the Cohtml library.

#include <Library.h>

Inherited by cohtml::LibraryParams

Public Functions

Name
LibraryParamsWithExternalRenderingLibrary()

Public Attributes

Name
IAllocator *Allocator
Memory allocator for all operations of the library. Must not be null.
IVirtualAllocator *VirtualAllocator
Logging::SeverityLoggingSeverity
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.
Profile::IPerformanceHandler *PerformanceHandler
Handler provided by the application that will receive performance warning messages.
IProfileMarkersTracer *ProfileMarkersTracer
Tracer object that will receive notifacations when Cohtml is being profiled.
IFileSystemWriter *FileSystemWriter
Optional file system handler that allows writing to a file on the local filesystem. The file writer is used by some features (like the profiling on some platforms) to open a file where data is written.
const char *WritableDirectory
Path to a writable directory. This is optional if you provide your own log handler.
boolUseDedicatedLayoutThread
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 recommended as it improves scalability and reduces time spent in the UI thread. For more information please refer to the Documentation.
boolEnableInternalAllocator
The internal memory allocator efficiently reuses already allocated memory, which enhances performance at the cost of some memory overhead. The internal memory allocator is enabled by default.
boolExposeGC
Enables an extension in the JS VM which exposes a global gc() function in the JS context that will try to force a full garbage collection. There is no guarantee that a GC will be performed or garbage will be collected.
const char *ScriptEngineFlags
Optional flags that are going to be passed to the Scripting Engine upon initialization. Example: –jitless –expose_gc For V8 engine, the available options can be found here: https://chromium.googlesource.com/v8/v8/+/f212270c9952fd76a14f0b72d9f5c51a99e3af22/src/flags/flag-definitions.h.
unsignedResourceThreadsCountHint
Tells the runtime how many 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.
OnWorkAvailableFuncOnWorkAvailable
The Task System will notify through this callback when work is available. 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.
PlatformSpecificParamsPlatformParams
Platform-specific parameters.
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.

Public Functions Documentation

function LibraryParamsWithExternalRenderingLibrary

inline LibraryParamsWithExternalRenderingLibrary()

Public Attributes Documentation

variable Allocator

IAllocator * Allocator;

Memory allocator for all operations of the library. Must not be null.

variable VirtualAllocator

IVirtualAllocator * VirtualAllocator;

variable LoggingSeverity

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.

variable LogHandler

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.

variable PerformanceHandler

Profile::IPerformanceHandler * PerformanceHandler;

Handler provided by the application that will receive performance warning messages.

variable ProfileMarkersTracer

IProfileMarkersTracer * ProfileMarkersTracer;

Tracer object that will receive notifacations when Cohtml is being profiled.

variable FileSystemWriter

IFileSystemWriter * FileSystemWriter;

Optional file system handler that allows writing to a file on the local filesystem. The file writer is used by some features (like the profiling on some platforms) to open a file where data is written.

variable WritableDirectory

const char * WritableDirectory;

Path to a writable directory. This is optional if you provide your own log handler.

variable UseDedicatedLayoutThread

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 recommended as it improves scalability and reduces time spent in the UI thread. For more information please refer to the Documentation.

variable EnableInternalAllocator

bool EnableInternalAllocator;

The internal memory allocator efficiently reuses already allocated memory, which enhances performance at the cost of some memory overhead. The internal memory allocator is enabled by default.

Note: By disabling the internal allocator Cohtml will free any unused memory to the client immediately, which will reduce the overall memory footprint.

variable ExposeGC

bool ExposeGC;

Enables an extension in the JS VM which exposes a global gc() function in the JS context that will try to force a full garbage collection. There is no guarantee that a GC will be performed or garbage will be collected.

Note: Garbage collection is a complicated process that is best done when it’s left to happen automatically. Use sparingly as a forced full garbage collection tends to be a heavy operation.

variable ScriptEngineFlags

const char * ScriptEngineFlags;

Optional flags that are going to be passed to the Scripting Engine upon initialization. Example: –jitless –expose_gc For V8 engine, the available options can be found here: https://chromium.googlesource.com/v8/v8/+/f212270c9952fd76a14f0b72d9f5c51a99e3af22/src/flags/flag-definitions.h.

variable ResourceThreadsCountHint

unsigned ResourceThreadsCountHint;

Tells the runtime how many 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.

variable SharedLibraryLocation

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.

Warning: Must end with a trailing slash.

variable OnWorkAvailable

OnWorkAvailableFunc OnWorkAvailable;

The Task System will notify through this callback when work is available. The tasks must be executed on a different thread.

variable OnWorkAvailableUserData

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.

variable PlatformParams

PlatformSpecificParams PlatformParams;

Platform-specific parameters.

variable DefaultStyleFontFamily

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.