Adds a listener to an event type.
When an event of the type pType fires, the callback pListener will be called. This function
returns a unique string id that may be used in removeEventListenerById to allow simple
listener removal.
It is possible to add an object that will be included in the callback to avoid creating too many closures.
The id of the inserted callback (actually an UUID).
Adds a listener to an event type.
When an event of the type pType fires, the callback pListener will be called. This function
returns a unique string id that may be used in removeEventListenerById to allow simple
listener removal.
The id of the inserted callback (actually an UUID).
Gets the current browser type.
The current browser type.
Gets the font loader responsible to provide font data to the rendering of annotations.
There is only one font loader.
The resulting FontLoaderInterface.
Gets the current log level.
This is the value previously set by setLogLevel. Defaults to LL_UsingDisposedObject.
The current log level.
Tells if the EventDispatcher has such a callback registered for the given event type.
true if such a listener is installed for the given type of event.
Removes a listener from an event type.
If no such listener is found, then the function returns false and does nothing. You must use the exact parameters that were used in addEventListener to actually remove the listener.
true if the callback was removed else false.
The listener function that gets removed.
The listener object that was used when addEventListener was called.
Removes a listener from an event type.
If no such listener is found, then the function returns false and does nothing. You must use the exact parameters that were used in addEventListener to actually remove the listener.
true if the callback was removed else false.
The listener function that gets removed.
Removes a listener by its id.
If no such listener is found, then the function returns false and does nothing. You must use the return value of addEventListener to actually remove the listener.
true if the callback was removed else false.
Sets the log level of the logger.
Any message with a criticality strictly lower than pLogLevel will be silently discarded.
You cannot set a criticality lower than LL_Debug and bigger than LL_Required.
true if pLogLevel is correct and that the log level has been set.
Customizes the way logging is handled for a specific criticality.
pLogLevel must be superior or equal to LL_Debug and strictly inferior to LL_Required.
Thus, the LL_Required level cannot be customized.
You may choose to :
When using LB_LogToObject, pLogObject cannot be undefined, else pLogObject is ignored.
true if the log level has been set (i.e. pLogLevel and pBehavior are correct and pLogObject is defined in case of LB_LogToObject).
Optional pLogObject: InfiniteLoggerEnables/Disables power saving mode.
Power saving mode is used to save CPU usage when the browser tab is hidden by introducing some frame throttling. The FilterSolverInterface calculations will be slower if the tab is hidden.
Power saving is disabled (false) by default.
The InfiniteApiControllerInterface interface is the core singleton of the 3djuump infinite javascript API.
It provides access to the following services :
The Font loading mechanism is available through getFontLoader.
The font loading mechanism may be done with the following :
The logging system is based on string messages with a criticality and a timestamp (date). The 3djuump infinite javascript API may log messages when key events occur.
You may :
The power saving system may be used to lower the CPU usage of the API when the browser is hidden. The 3djuump infinite javascript API features an internal clock that ticks every 16 milliseconds if the browser has the focus, and every 1 second when the browser has not the focus and power saving is enabled. When the internal clock ticks, the infinite objects are updated and calculated, and the [Tick](../enums/InfiniteApiControllerInterfaceSignal.html#Tick) signal is sent when all objects have been updated. Please note that the [DisplayDone](../enums/InfiniteEngineInterfaceSignal.html#DisplayDone) signal is sent by the [InfiniteEngineInterface](InfiniteEngineInterface.html) when the **rendering** is done (this is not at the same moment than [Tick](../enums/InfiniteApiControllerInterfaceSignal.html#Tick)). Power saving is enabled with [setPowerSavingEnabled](InfiniteApiControllerInterface.html#setPowerSavingEnabled).
The browser detection is based on bowser. At the start of the API, the running browser is detected and getBrowserName, getBrowserType, getBrowserVersion provide information about the current browser. The browser type is a BrowserType that helps identify the current browser.
NB : In case of Microsoft Edge, two versions exist, one is chromium based, the other not, and isEdgeChromium helps to disambiguate the two.
See