![]() |
RAMSES Documentation
27.0.130
Information for RAMSES users and developers
|
The RendererConfig holds a set of parameters to be used to initialize a renderer. More...
#include <RendererConfig.h>
Public Member Functions | |
RendererConfig () | |
Default constructor of RendererConfig. More... | |
RendererConfig (int32_t argc, char const *const *argv) | |
Constructor of RendererConfig that takes command line parameters and parses them to initialize the parameters. More... | |
RendererConfig (const RendererConfig &other) | |
Copy constructor of RendererConfig. More... | |
virtual | ~RendererConfig () |
Destructor of RendererConfig. More... | |
status_t | setBinaryShaderCache (IBinaryShaderCache &cache) |
Set the Binary Shader Cache to be used in Renderer. More... | |
status_t | setRendererResourceCache (IRendererResourceCache &cache) |
Set the resource cache implementation to be used by the renderer. More... | |
status_t | enableSystemCompositorControl () |
Enable the renderer to communicate with the system compositor. This flag needs to be enabled before calling any of the system compositor related calls, otherwise an error will be reported when issuing such commands. More... | |
status_t | setFrameCallbackMaxPollTime (uint64_t waitTimeInUsec) |
Set the maximum time to wait for the system compositor frame callback before aborting and skipping rendering of current frame. This is an advanced function to be used by experts only. Be warned that the synchronization of frame callbacks with the system compositor and the display controller vsync is a sensitive topic and can majorly influence system performance. More... | |
status_t | setWaylandEmbeddedCompositingSocketName (const char *socketname) |
Set the name to be used for the embedded compositing display socket name. More... | |
const char * | getWaylandEmbeddedCompositingSocketName () const |
Get the current setting of embedded compositing display socket name. More... | |
status_t | setWaylandEmbeddedCompositingSocketGroup (const char *groupname) |
Request that the embedded compositing display socket belongs to the given group. More... | |
status_t | setWaylandEmbeddedCompositingSocketPermissions (uint32_t permissions) |
Request that the embedded compositing display socket obtains the permissions given. More... | |
status_t | setWaylandEmbeddedCompositingSocketFD (int socketFileDescriptor) |
Set the file descriptor for the embedded compositor display socket. More... | |
status_t | setSystemCompositorWaylandDisplay (const char *waylandDisplay) |
Set the Wayland display name to connect system compositor to. This will override the default behavior which is to use WAYLAND_DISPLAY environment variable. More... | |
const char * | getSystemCompositorWaylandDisplay () const |
Get the current setting of Wayland display name. More... | |
status_t | setRenderThreadLoopTimingReportingPeriod (std::chrono::milliseconds period) |
Set the desired reporting period for first display loop timings. More... | |
std::chrono::milliseconds | getRenderThreadLoopTimingReportingPeriod () const |
Get the current reporting period for renderThread loop timings. More... | |
RendererConfig & | operator= (const RendererConfig &other)=delete |
Deleted copy assignment. More... | |
![]() | |
status_t | validate () const |
Generates verbose validation of the object. More... | |
const char * | getValidationReport (EValidationSeverity minSeverity=EValidationSeverity_Info) const |
Provides verbose report in human readable form generated by validate. More... | |
const char * | getStatusMessage (status_t status) const |
Get the string description for a status provided by a RAMSES API function. More... | |
StatusObject (const StatusObject &other)=delete | |
Deleted copy constructor. More... | |
StatusObject & | operator= (const StatusObject &other)=delete |
Deleted copy assignment. More... | |
Public Attributes | |
class RendererConfigImpl & | impl |
![]() | |
class StatusObjectImpl & | impl |
Additional Inherited Members | |
![]() | |
StatusObject (StatusObjectImpl &pimpl) | |
Constructor for StatusObject. More... | |
virtual | ~StatusObject () |
Destructor of the StatusObject. More... | |
The RendererConfig holds a set of parameters to be used to initialize a renderer.
ramses::RendererConfig::RendererConfig | ( | ) |
Default constructor of RendererConfig.
ramses::RendererConfig::RendererConfig | ( | int32_t | argc, |
char const *const * | argv | ||
) |
Constructor of RendererConfig that takes command line parameters and parses them to initialize the parameters.
[in] | argc | Number of arguments in arguments array parameter |
[in] | argv | Array of arguments as strings |
ramses::RendererConfig::RendererConfig | ( | const RendererConfig & | other | ) |
Copy constructor of RendererConfig.
[in] | other | Other instance of RendererConfig |
|
virtual |
Destructor of RendererConfig.
status_t ramses::RendererConfig::enableSystemCompositorControl | ( | ) |
Enable the renderer to communicate with the system compositor. This flag needs to be enabled before calling any of the system compositor related calls, otherwise an error will be reported when issuing such commands.
std::chrono::milliseconds ramses::RendererConfig::getRenderThreadLoopTimingReportingPeriod | ( | ) | const |
Get the current reporting period for renderThread loop timings.
const char* ramses::RendererConfig::getSystemCompositorWaylandDisplay | ( | ) | const |
Get the current setting of Wayland display name.
const char* ramses::RendererConfig::getWaylandEmbeddedCompositingSocketName | ( | ) | const |
Get the current setting of embedded compositing display socket name.
|
delete |
Deleted copy assignment.
other | unused |
status_t ramses::RendererConfig::setBinaryShaderCache | ( | IBinaryShaderCache & | cache | ) |
Set the Binary Shader Cache to be used in Renderer.
[in] | cache | the binary shader cache to be used by the Renderer |
status_t ramses::RendererConfig::setFrameCallbackMaxPollTime | ( | uint64_t | waitTimeInUsec | ) |
Set the maximum time to wait for the system compositor frame callback before aborting and skipping rendering of current frame. This is an advanced function to be used by experts only. Be warned that the synchronization of frame callbacks with the system compositor and the display controller vsync is a sensitive topic and can majorly influence system performance.
[in] | waitTimeInUsec | The maximum time wait for a frame callback, in microseconds |
status_t ramses::RendererConfig::setRendererResourceCache | ( | IRendererResourceCache & | cache | ) |
Set the resource cache implementation to be used by the renderer.
[in] | cache | the resource cache to be used by the renderer. |
status_t ramses::RendererConfig::setRenderThreadLoopTimingReportingPeriod | ( | std::chrono::milliseconds | period | ) |
Set the desired reporting period for first display loop timings.
The values are reported periodically via the renderer callback ramses::IRendererEventHandler::renderThreadLoopTimings. Only the first display is measured. A value of zero disables reporting and is the default.
[in] | period | Cyclic time period after which timing information should be reported |
status_t ramses::RendererConfig::setSystemCompositorWaylandDisplay | ( | const char * | waylandDisplay | ) |
Set the Wayland display name to connect system compositor to. This will override the default behavior which is to use WAYLAND_DISPLAY environment variable.
[in] | waylandDisplay | Wayland display name to use for connection |
status_t ramses::RendererConfig::setWaylandEmbeddedCompositingSocketFD | ( | int | socketFileDescriptor | ) |
Set the file descriptor for the embedded compositor display socket.
The embedded compositor communicates with its clients via a socket file. There are two distinct ways to connect the embedded compositor with its socketfile.
Either you provide a name for the socket file or the file descriptor of the socket file.
This method is used to set the file descriptor.
When the file descriptor is set, the embedded compositor will use this file descriptor directly as its socket. It is expected that this file descriptor is belonging to a file already open, bind and listen to.
If both filename and file descriptor are set display creation will fail.
socketFileDescriptor | The file descriptor of the socket for the embedded compositor. |
status_t ramses::RendererConfig::setWaylandEmbeddedCompositingSocketGroup | ( | const char * | groupname | ) |
Request that the embedded compositing display socket belongs to the given group.
[in] | groupname | The group name of the socket. |
status_t ramses::RendererConfig::setWaylandEmbeddedCompositingSocketName | ( | const char * | socketname | ) |
Set the name to be used for the embedded compositing display socket name.
The embedded compositor communicates with its clients via a socket file. There are two distinct ways to connect the embedded compositor with its socketfile. Either you provide a name for the socket file or the file descriptor of the socket file.
This method is used to set the file name of the socket.
Providing the name of the socket file leads to the embedded compositor searching/creating the socket file in the directory pointed to by $XDG_RUNTIME_DIR. If a groupname is set, also the group is set.
Be aware that the socket file name is only used if the file descriptor is set to an invalid value (default), see RendererConfig::setWaylandEmbeddedCompositingSocketFD
If both filename and file descriptor are set display creation will fail.
[in] | socketname | The file name of the socket file. |
status_t ramses::RendererConfig::setWaylandEmbeddedCompositingSocketPermissions | ( | uint32_t | permissions | ) |
Request that the embedded compositing display socket obtains the permissions given.
The format should be the same as expected by chmod() mode argument. Permissions value may not be 0. If not set "user+group can read/write (0660)" is used as default.
The socket should be readable and writable for the required users, some examples values are:
This value is only used when socket is given as name, e.g. via setWaylandEmbeddedCompositingSocketName(), not when passed in as filedescriptor.
[in] | permissions | The permissions of the socket. |
class RendererConfigImpl& ramses::RendererConfig::impl |
Stores internal data for implementation specifics of RendererConfig.