The ICondition resource interface. More...
#include "murl_resource_i_condition.h"
Inherited by Murl::Resource::Condition.
Public Types | |
enum | Tag { TAG_LANGUAGE , TAG_TARGET_CLASS , TAG_TARGET_DEVICE , TAG_OPERATING_SYSTEM , TAG_GPU , TAG_PRESCALE_FACTOR , TAG_VIDEO_API , TAG_AUDIO_API , TAG_FEATURE , TAG_USER_CONFIGURATION , TAG_TARGET_HOST , TAG_VALUE_MASK , TAG_KEY_MASK , TAG_COMBINE_MASK , TAG_INCLUDE_MASK , TAG_EXCLUDE_MASK , TAG_SHIFT } |
Condition tags. More... | |
Public Member Functions | |
virtual Bool | IsValidForConfiguration (const IAppConfiguration *appConfig) const =0 |
Check if the condition holds for a given configuration. More... | |
virtual const UInt32 * | GetTags () const =0 |
Get a raw pointer to the tags. More... | |
virtual UInt32 | GetNumberOfTags () const =0 |
Get the number of tags present. More... | |
virtual const Char *const * | GetStrings () const =0 |
Get a raw pointer to the user-defined configuration strings. More... | |
virtual UInt32 | GetNumberOfStrings () const =0 |
Get the number of user-defined configuration strings. More... | |
Detailed Description
The ICondition resource interface.
The condition interface represents a mechanism for checking if a resource is valid for a given configuration, queried via an IAppConfiguration object. The resource may contain any number of tag key/value pairs, which specify the individual configuration item(s) to check. All of the given values must match the given configuration for the resource to be valid.
Member Enumeration Documentation
◆ Tag
Condition tags.
Enumerator | |
---|---|
TAG_LANGUAGE | Current language, see IAppConfiguration::IsLanguageMatching(). |
TAG_TARGET_CLASS | Target class, see IPlatformConfiguration::IsTargetClassMatching(). |
TAG_TARGET_DEVICE | Target device, see IPlatformConfiguration::IsTargetDeviceMatching(). |
TAG_OPERATING_SYSTEM | Operating system, see IPlatformConfiguration::IsOperatingSystemMatching(). |
TAG_GPU | GPU, see IPlatformConfiguration::IsGpuMatching(). |
TAG_PRESCALE_FACTOR | Texture prescale factor, see IEngineConfiguration::IsTexturePrescaleDivisorMatching(). |
TAG_VIDEO_API | Selected video API, see IEngineConfiguration::IsVideoApiMatching(). |
TAG_AUDIO_API | Selected audio API, see IEngineConfiguration::IsAudioApiMatching(). |
TAG_FEATURE | Engine features, see IEngineConfiguration::GetFeatures(). |
TAG_USER_CONFIGURATION | User-defined configuration, see IAppConfiguration::IsUserConfigurationMatching(). |
TAG_TARGET_HOST | Target host, see IPlatformConfiguration::IsTargetHostMatching(). |
TAG_VALUE_MASK | Bit mask for tag value. |
TAG_KEY_MASK | Bit mask for tag key. |
TAG_COMBINE_MASK | Tag key flag to combine multiple tags of the same type. |
TAG_INCLUDE_MASK | Tag key flag to include the given value in the valid configuration set. |
TAG_EXCLUDE_MASK | Tag key flag to exclude the given value from the valid configuration set. |
TAG_SHIFT | Number of bits to shift the tag key to the left. |
Member Function Documentation
◆ IsValidForConfiguration()
|
pure virtual |
Check if the condition holds for a given configuration.
- Parameters
-
appConfig The configuration object to check against.
- Returns
- true if the condition holds.
◆ GetTags()
|
pure virtual |
Get a raw pointer to the tags.
- Returns
- A pointer to the tags, or null if none are defined.
◆ GetNumberOfTags()
|
pure virtual |
Get the number of tags present.
- Returns
- The number of tags.
◆ GetStrings()
|
pure virtual |
Get a raw pointer to the user-defined configuration strings.
- Returns
- A pointer to the C string array, or null if none are defined.
◆ GetNumberOfStrings()
|
pure virtual |
Get the number of user-defined configuration strings.
- Returns
- The number of strings.
The documentation for this interface was generated from the following file:
- murl_resource_i_condition.h