ApplicationWindowOptionsKit

class HPS::ApplicationWindowOptionsKit : public HPS::Kit

The ApplicationWindowOptionsKit class is a user space object. It is used to specify application-window-specific options. Calling HPS::ApplicationWindowOptionsKit::GetDefault() will return a kit with values found in this table.

Public Functions

ApplicationWindowOptionsKit()

The default constructor creates an empty ApplicationWindowOptionsKit object.

ApplicationWindowOptionsKit(ApplicationWindowOptionsKit &&in_that)

The move constructor creates an ApplicationWindowOptionsKit by transferring the underlying impl of the rvalue reference to this ApplicationWindowOptionsKit thereby avoiding a copy and allocation.

Parameters

in_that – An rvalue reference to an ApplicationWindowOptionsKit to take the impl from.

ApplicationWindowOptionsKit(ApplicationWindowOptionsKit const &in_kit)

The copy constructor creates a new ApplicationWindowOptionsKit object that contains the same settings as the source ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to copy.

virtual bool Empty() const

Indicates whether this ApplicationWindowOptionsKit has any values set on it.

Returns

true if no values are set on this ApplicationWindowOptionsKit, false otherwise.

bool Equals(ApplicationWindowOptionsKit const &in_kit) const

Check if the source ApplicationWindowOptionsKit is equivalent to this ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to compare to this ApplicationWindowOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(ApplicationWindowOptionsKit const &in_kit) const

Check if the source ApplicationWindowOptionsKit is not equivalent to this ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to compare to this ApplicationWindowOptionsKit.

Returns

true if the objects are not equivalent, false otherwise.

ApplicationWindowOptionsKit &operator=(ApplicationWindowOptionsKit &&in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this ApplicationWindowOptionsKit thereby avoiding a copy.

Parameters

in_that – An rvalue reference to an ApplicationWindowOptionsKit to take the impl from.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &operator=(ApplicationWindowOptionsKit const &in_kit)

Copies the source ApplicationWindowOptionsKit into this ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to copy.

Returns

A reference to this ApplicationWindowOptionsKit.

bool operator==(ApplicationWindowOptionsKit const &in_kit) const

Check if the source ApplicationWindowOptionsKit is equivalent to this ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to compare to this ApplicationWindowOptionsKit.

Returns

true if the objects are equivalent, false otherwise.

void Set(ApplicationWindowOptionsKit const &in_kit)

Copies the source ApplicationWindowOptionsKit into this ApplicationWindowOptionsKit.

Parameters

in_kit – The source ApplicationWindowOptionsKit to copy.

ApplicationWindowOptionsKit &SetAntiAliasCapable(bool in_state, unsigned int in_samples = 4)

Sets the anti-alias options for this ApplicationWindowOptionsKit.

Parameters
  • in_state – Whether the associated application window should be anti-alias capable.

  • in_samples – The number of anti-alias samples to use for the associated application window. Defaults to 4.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &SetDriver(Window::Driver in_driver)

Sets the driver for this ApplicationWindowOptionsKit.

Parameters

in_driver – The driver for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &SetFramebufferRetention(bool in_retain)

Sets the framebuffer retention option for this ApplicationWindowOptionsKit.

Parameters

in_retain – Whether the associated application window retains the image from the previous frame.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &SetPlatformData(PlatformData in_platform_data)

Sets the platform specific data for this ApplicationWindowOptionsKit.

Parameters

in_platform_data – Platform specific data for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &SetPreferredGPU(GPU::Preference in_gpu_preference, char const *in_gpu_name = "")

Sets which GPU to use when there are multiple available GPUs on a system. This method is only available when using the DirectX11 driver. Other drivers will ignore this request. in_gpu_name needs to be specified when in_gpu_preference is set to GPU::Preference::Specific. The value passed for in_gpu_name needs to match one of those returned by Database::ShowAvailableGPUs(). If you select something other than default GPU, and Visualize cannot find a GPU which satisfies the requirement, the default GPU

will be used.

All Visualize windows using DirectX11 will use the same

GPU. The user should select the preferred GPU before creating a DirectX11 window. The default is for DirectX11 windows to use HighPerformance GPUs. The Microsoft Basic Software Render Driver is always returned as one of the available GPUs by DirectX11. By selecting it (which users can do by calling SetPreferredGPU(GPU::Preference::Specific, "Microsoft Basic Render Driver")), DirectX11 will run in software mode.

Parameters
Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &SetScreenAntiAliasing(bool in_state)

Manipulates the state of screen anti-aliasing.

Parameters

in_state – Whether screen anti-aliasing should be used.

Returns

A reference to this object.

void Show(ApplicationWindowOptionsKit &out_kit) const

Copies this ApplicationWindowOptionsKit into the given ApplicationWindowOptionsKit.

Parameters

out_kit – The ApplicationWindowOptionsKit to populate with the contents of this ApplicationWindowOptionsKit.

bool ShowAntiAliasCapable(bool &out_state, unsigned int &out_samples) const

Shows the anti-alias options for this ApplicationWindowOptionsKit.

Parameters
  • out_state – Whether the associated application window should be anti-alias capable.

  • out_samples – The number of anti-alias samples to use for the associated application window.

Returns

true if anti-alias options were set, false otherwise.

bool ShowDriver(Window::Driver &out_driver) const

Shows the driver for this ApplicationWindowOptionsKit.

Parameters

out_driver – The driver for this ApplicationWindowOptionsKit.

Returns

true if a driver was set, false otherwise.

bool ShowFramebufferRetention(bool &out_retain) const

Shows the framebuffer retention setting for this ApplicationWindowOptionsKit.

Parameters

out_retain – The framebuffer retention setting for this ApplicationWindowOptionsKit.

Returns

true if platform specific data was set, false otherwise.

bool ShowPlatformData(PlatformData &out_platform_data) const

Shows the platform specific data for this ApplicationWindowOptionsKit.

Parameters

out_platform_data – The platform specific data for this ApplicationWindowOptionsKit.

Returns

true if platform specific data was set, false otherwise.

bool ShowPreferredGPU(GPU::Preference &out_gpu_preference, HPS::UTF8 &out_gpu_name) const

Shows the preference settings for picking a GPU when multiple GPUs are available.

Parameters
  • out_gpu_preference – The preference for picking a GPU when multiple GPUs are available.

  • out_gpu_name – The name of the GPU to use. Only valid when out_gpu_preference is GPU::Preference::Specific

Returns

true if a GPU preference was set, false otherwise.

ApplicationWindowOptionsKit &UnsetAntiAliasCapable()

Removes the anti-alias options for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetDriver()

Removes the driver for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetEverything()

Removes all settings from this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetFramebufferRetention()

Removes the framebuffer retention setting for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetPlatformData()

Removes the platform specific data for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetPreferredGPU()

Removes the setting for which GPU should be used when multiple GPUs are available.

Returns

A reference to this ApplicationWindowOptionsKit.

ApplicationWindowOptionsKit &UnsetScreenAntiAliasing()

Removes the screen anti-alias options for this ApplicationWindowOptionsKit.

Returns

A reference to this ApplicationWindowOptionsKit.

virtual ~ApplicationWindowOptionsKit()

Public Static Functions

static ApplicationWindowOptionsKit GetDefault()

Creates an ApplicationWindowOptionsKit which contains the default settings. The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default.

Returns

An ApplicationWindowOptionsKit with the default settings.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ApplicationWindowOptionsKit