Cogs.Rendering
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Functions
Flags.h File Reference
#include "Base.h"
#include <cstdint>

Go to the source code of this file.

Classes

struct  Cogs::Usage
 Usage flags for buffers. More...
 
struct  Cogs::AccessMode
 Access mode to buffers after creation. More...
 
struct  Cogs::BindFlags
 Bind flags describe how a resource can be used by the graphics pipeline. More...
 
struct  Cogs::MapMode
 Mapping modes for resources managed by the graphics system. More...
 
struct  Cogs::TextureFlags
 Texture flags describing valid usage for a texture object. More...
 

Namespaces

namespace  Cogs
 

Macros

#define COGS_RENDERING_ENABLE_ENUM_FLAGS(EnumType)
 

Functions

 Cogs::COGS_RENDERING_ENABLE_ENUM_FLAGS (TextureFlags::ETextureFlags)
 

Macro Definition Documentation

◆ COGS_RENDERING_ENABLE_ENUM_FLAGS

#define COGS_RENDERING_ENABLE_ENUM_FLAGS (   EnumType)
Value:
static_assert(sizeof(EnumType) <= sizeof(uint32_t)); \
constexpr EnumType operator|(EnumType lhs, EnumType rhs) { return static_cast<EnumType>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs)); } \
constexpr EnumType operator&(EnumType lhs, EnumType rhs) { return static_cast<EnumType>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs)); } \
constexpr EnumType & operator|=(EnumType & lhs, EnumType rhs) { lhs = static_cast<EnumType>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs)); return lhs; }