Cogs.Core
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Cogs Namespace Reference

Contains all Cogs related functionality. More...

Namespaces

namespace  Collections
 Contains collection classes used to manage object storage.
 
namespace  ComponentModel
 Contains code for composing and managing entities built from components.
 
namespace  Core
 Contains the Engine, Renderer, resource managers and other systems needed to run Cogs.Core.
 
namespace  Detail
 Contains implementation details.
 
namespace  Direct3D11
 Contains Direct3D11 specific format mappings.
 
namespace  Direct3D12
 Contains Direct3D12 specific format mappings.
 
namespace  Geometry
 Contains geometry calculations and generation.
 
namespace  Logging
 Contains logging functionality for the Cogs native library.
 
namespace  Reflection
 Contains reflection support.
 
namespace  Utility
 Contains common utility members for camera setup Other camera utilities: Interpolation utilities can be found in: Foundation/Geometry/EasingFn.h Foundation/Geometry/Interpolator.h Foundation/Geometry/Interpolation.hpp Component: CinematicCameraComponent Library: glm.
 
namespace  Vulkan
 Contains Direct3D12 specific format mappings.
 

Classes

struct  AccessMode
 Access mode to buffers after creation. More...
 
struct  AtomicCounterBufferGL20
 
struct  AtomicCounterMapGL20
 
struct  AtomicCounterVariableGL20
 
struct  AttributesGL20
 
struct  BindFlags
 Bind flags describe how a resource can be used by the graphics pipeline. More...
 
struct  Binding
 
struct  Bindings
 
struct  BlendFlags
 
struct  BlendState
 Encapsulates blend state for the graphics pipeline in a state object. More...
 
struct  BlendStateD3D12
 
struct  BlendStateGL20
 
struct  BlendStateGLES30
 
struct  BlendStateVK
 
class  BridgeRasterSource
 
struct  BufferBinding
 
struct  BufferContext
 
struct  BufferContextVK
 
struct  BufferD3D11
 
struct  BufferD3D12
 
struct  BufferGL20
 
struct  BufferGLES30
 
struct  BufferPage
 
struct  BufferPageVK
 
struct  BufferPool
 
struct  BufferPoolVK
 
struct  BuffersCommon
 
struct  BuffersD3D11
 
struct  BuffersD3D12
 
struct  BuffersGL20
 
struct  BuffersGLES30
 
class  BuffersNull
 
class  BuffersVK
 
class  BuffersWebGPU
 
struct  BufferVK
 
struct  BufferWebGPU
 
struct  CapabilitiesD3D11
 
struct  CapabilitiesD3D12
 
struct  CapabilitiesGL20
 
struct  CapabilitiesGLES30
 
class  CapabilitiesNull
 
class  CapabilitiesVK
 
class  CapabilitiesWebGPU
 
struct  CenterCalculationPolicy
 Policies for determining the center of the clipmap. More...
 
struct  ClipmapDepthQuery
 
struct  ClipmapEffectVariables
 
struct  ClipmapGeometry
 
class  ClipmapLevel
 
class  ClipmapManager
 
struct  ClipmapMesh
 
struct  ClipmapParameters
 
class  ClipmapQueryHandler
 
struct  ClipmapRenderer
 
struct  ClipmapState
 
struct  ClipmapTextureBindings
 
class  ClipmapUpdate
 
class  ClipmapUpdater
 
class  ClipmapUpsampler
 
struct  CommandGroupAnnotation
 RAII-helper for pushCommandGroupAnnotation/pushCommandGroupAnnotation. More...
 
struct  ComputePipelineWebGPU
 
struct  ConstantBufferVariable
 
struct  ContextCommon
 
struct  ContextD3D11
 
struct  ContextD3D12
 
struct  ContextGL20
 
struct  ContextGLES30
 
class  ContextNull
 
class  ContextVK
 
class  ContextWebGPU
 
struct  DebugOptions
 
struct  DefaultIOHandler
 
struct  DefaultLockingPolicy
 
struct  DefaultVerificationPolicy
 
struct  DepthRenderData
 
struct  DepthStencilState
 Encapsulates state for depth buffer usage and stencil buffer usage in a state object. More...
 
struct  DepthStencilStateD3D12
 
struct  DepthStencilStateVK
 
struct  DepthStencilTargetD3D12
 
struct  DepthStencilTargetGL20
 
struct  DepthStencilTargetGLES30
 
struct  DepthStencilTargetVK
 
struct  DepthStencilTargetWebGPU
 
struct  DepthStencilViewDescription
 Describes a single depth stencil view and which resources to use from the underlying texture. More...
 
struct  DescriptorContext
 
struct  DescriptorPage
 
struct  DescriptorPool
 
struct  DirectoryEntry
 
struct  Effect
 
struct  EffectContents
 
struct  EffectD3D12
 
struct  EffectDescription
 Contains an effect description used to load a single effect. More...
 
struct  EffectFlags
 Flags used to describe effect source. More...
 
struct  EffectGL20
 
struct  EffectGLES30
 
struct  EffectParameters
 
struct  EffectsCommon
 
struct  EffectsD3D11
 
struct  EffectsD3D12
 
struct  EffectsGL20
 
struct  EffectsGLES30
 
struct  EffectSignature
 
class  EffectsNull
 
class  EffectsVK
 
class  EffectsWebGPU
 
struct  EffectVariable
 
struct  EffectVK
 
struct  EffectWebGPU
 
struct  Extent
 Raster index extent. More...
 
struct  Factory
 Graphics device construction factory. More...
 
struct  FenceD3D11
 
struct  FenceD3D12
 
struct  FileContents
 Abstract base class storing data read from a file. More...
 
struct  FileEntry
 
class  FileHandle
 
class  FileSystemWatcher
 
struct  floata
 Two component vector manually padded to 16 byte size. More...
 
struct  FormatInfo
 
class  FourierTransform2D
 
struct  Framebuffer
 Framebuffers to select from when doing framebuffer operations. More...
 
struct  FrameResources
 
struct  FrameStatistics
 
struct  GeodeticExtent
 Extent in terrain reference system coordinates. More...
 
struct  Gesture
 
class  Gestures
 
struct  GLContextBase
 
struct  GLFence
 
struct  GLSyncObjects
 
class  GPGPUQuadRenderer
 
struct  GraphicsDeviceCapabilities
 Contains device capabilities. More...
 
struct  GraphicsDeviceD3D11
 
struct  GraphicsDeviceD3D12
 
class  GraphicsDeviceGL20
 
struct  GraphicsDeviceGLES30
 
class  GraphicsDeviceNull
 
struct  GraphicsDeviceSettings
 Settings for graphics device initialization. More...
 
class  GraphicsDeviceVK
 
class  GraphicsDeviceWebGPU
 
struct  Handle_t
 Handle template class used to provide opaque, non-converting handles. More...
 
struct  IBuffers
 Provides buffer management functionality. More...
 
struct  ICapabilities
 Provides capability query functionality. More...
 
struct  IContext
 Represents a graphics device context which can receive rendering commands. More...
 
struct  ID3DBlob
 
struct  IEffects
 Provides effects and shader management functionality. More...
 
class  IGraphicsDevice
 Represents a graphics device used to manage graphics resources and issue drawing commands. More...
 
struct  IIOHandler
 I/O handler. More...
 
class  ImmutableString
 Represents a non-copyable immutable string. More...
 
struct  IndexedPosition
 
struct  InputAssemblerStateCommon
 
struct  InputAssemblerStateD3D11
 
struct  InputAssemblerStateGL20
 
struct  InputAssemblerStateGLES30
 
struct  InputAttribute
 
struct  InputLayoutD3D11
 
struct  InputLayoutD3D12
 
struct  InputLayoutGL20
 
struct  InputLayoutGLES30
 
struct  InputLayoutNull
 
struct  InputLayoutVK
 
struct  InputLayoutWebGPU
 
class  Interpolator
 
struct  IntrusiveList
 
struct  IntrusiveNode
 
struct  InvalidationFlags
 
struct  IPipelineStates
 
struct  IRenderTargets
 Provides render target management functionality. More...
 
class  ISwapChain
 
struct  ISyncObjects
 Provides sync object management. More...
 
struct  Item
 
struct  ITextures
 Provides texture management functionality. More...
 
struct  IUnknown
 
class  Keyboard
 
struct  LevelTextureParameters
 
class  LLToENUConverter
 Converts WGS latitude-longitude coordinates to ENU local tangential east-north-up coordinate system. More...
 
struct  MapMode
 Mapping modes for resources managed by the graphics system. More...
 
struct  MappedBuffer
 Provides RAII style mapping of a buffer resource. More...
 
struct  MemoryBufferBackedFileContents
 
struct  MMapBackedFileContents
 
class  Module
 Base class for managing libraries dynamically loaded at runtime. More...
 
class  ModuleAPI
 Helper class for shared libraries that implement the getPublicAPI function and provide a structure of function pointers that contain the module's public API. More...
 
class  Monitor
 Helper class for enumerating available displays on the host computer. More...
 
class  Mouse
 
struct  MultiViewDescription
 Describes multiview framebuffer layout. More...
 
struct  MultiViewGLES30
 
struct  MutexLockingPolicy
 
struct  NormalLevelParameters
 
struct  NormalUpdateParameters
 
class  NormalUpdater
 
struct  OceanEffectVariables
 
struct  OceanOptions
 
class  OceanRenderer
 
struct  OpenGLState
 
struct  OrphanBufferD3D12
 
struct  OrphanRTVDescriptor
 
struct  PackedVertexElement
 
struct  PerImageryBindingHandles
 Per Imagery source binding handles. More...
 
struct  PermutationDependentClipmapRendererData
 
struct  PermutationDependentOceanRendererData
 Part of the OceanRenderer context that depends on the selected permutation. More...
 
struct  PermutationDependentRenderContextData
 Part of the render context that depends on the selected permutation. More...
 
struct  PipelineStatesWebGPU
 
class  PlatformContext
 
struct  Pointer
 Provides scoped storage for a raw pointer and corresponding deletion logic. More...
 
struct  PoolBuffer
 
struct  PoolBufferVK
 
struct  PoolDescriptor
 
struct  PoolIterator
 Iterator type for iterating over resource pools accessing the actual wrapped resource instances. More...
 
struct  PoolStoragePolicy
 Storage policy storing all resources in a pool, reusing resource memory when possible. More...
 
struct  PresentFlags
 Flags controlling presentation. More...
 
struct  PrimitiveType
 Primitive types for interpreting vertex data sent to the graphics pipeline. More...
 
struct  ProcessedContent
 
struct  RasterizerState
 Encapsulates state for primitive rasterization in a state object. More...
 
struct  RasterizerStateD3D12
 
struct  RasterizerStateVK
 
class  RasterLevel
 
class  RasterSource
 
struct  RasterSourceFlags
 
struct  RasterSourceParameters
 
struct  RasterSourceSubscription
 
struct  RasterTile
 
struct  RasterTileData
 
struct  RasterTileIdentifier
 
struct  RasterTileRegion
 
struct  RegionParameters
 
struct  RenderBlock
 
struct  RenderContext
 
struct  RenderingAllocatorInfo
 Allocation information. More...
 
struct  RenderLevel
 
struct  RenderOptions
 
struct  RenderPassInfo
 
struct  RenderPipelineWebGPU
 
struct  RenderTargetD3D11
 
struct  RenderTargetD3D12
 
struct  RenderTargetGL20
 
struct  RenderTargetGLES30
 
struct  RenderTargetsD3D11
 
struct  RenderTargetsD3D12
 
struct  RenderTargetsGL20
 
struct  RenderTargetsGLES30
 
class  RenderTargetsNull
 
class  RenderTargetsVK
 
class  RenderTargetsWebGPU
 
struct  RenderTargetViewDataGLES30
 
struct  RenderTargetViewDescription
 Describes a single render target view and which resources to use from the underlying texture. More...
 
struct  RenderTargetVK
 
struct  RenderTargetWebGPU
 
struct  RenderTexture
 
struct  RequestClosure
 
struct  ResourceAllocator
 
struct  ResourceD3D12
 
class  ResourceMapBase
 
struct  ResourcePointer
 
struct  ResourceStatistics
 
struct  ResourceWrapper
 Provides a wrapper around resources for pool storage with intrusive linked list pointers added. More...
 
struct  RootSignature
 
struct  RTPStream
 
struct  RTSP
 
struct  SamplerD3D12
 
struct  SamplerGLES30
 
struct  SamplerMapGL20
 
struct  SamplerState
 Encapsulates state for texture sampling in a state object. More...
 
struct  SamplerStateWebGPU
 
struct  SamplerVK
 
struct  SemanticSlotBinding
 
struct  Series
 Known graphics device series. More...
 
struct  Shader
 
struct  ShaderConstantBuffer
 
struct  ShaderReflectionInfo
 
struct  ShaderSource
 
struct  ShaderType
 
struct  ShadingOptions
 
struct  SharedGraphicsContext
 
struct  Signature
 
struct  SlotType
 
struct  StateBufferBinding
 
struct  StateVariable
 
struct  Storage
 
struct  StringId
 
class  StringView
 Provides a weakly referenced view over the contents of a string. More...
 
class  SwapChainD3D11
 
class  SwapChainGL20
 
class  SwapChainWebGPU
 
struct  SyncObjectsCommon
 
struct  SyncObjectsD3D11
 
struct  SyncObjectsD3D12
 
struct  TerrainContext
 
struct  TerrainMetrics
 
struct  TerrainQuery
 
struct  TerrainQueryData
 
struct  TerrainQueryResults
 
struct  TerrainRenderPass
 
struct  TextureBinding
 
struct  TextureD3D11
 
struct  TextureD3D12
 
struct  TextureData
 
struct  TextureDescription
 
struct  TextureExtent
 
struct  TextureFlags
 Texture flags describing valid usage for a texture object. More...
 
struct  TextureFlagsVK
 
struct  TextureGL20
 
struct  TextureGLES30
 
struct  TextureOrigin
 
struct  TexturesCommon
 
struct  TexturesD3D11
 
struct  TexturesD3D12
 
struct  TexturesGL20
 
struct  TexturesGLES30
 
class  TexturesNull
 
struct  TexturesVK
 
class  TexturesWebGPU
 
struct  TextureViewD3D11
 
struct  TextureViewD3D12
 
struct  TextureViewDescription
 Describes how to fetch data from a texture in shaders. More...
 
struct  TextureViewWebGPU
 
struct  TextureVK
 
struct  TextureWebGPU
 
struct  TileData
 
struct  TileDataFlags
 
struct  TileFlags
 
struct  TileLoadRequest
 
struct  TileLoadResponse
 
class  Timer
 Old timer class. More...
 
struct  UniqueValue
 A value that is cleared when it is moved from. More...
 
struct  UpdateOptions
 
struct  UploadStatistics
 
struct  Usage
 Usage flags for buffers. More...
 
class  Utilities
 
struct  vec2a
 Two component vector manually padded to 16 byte size. More...
 
struct  Vendors
 Known graphics device vendors. More...
 
struct  VertexArrayObjectGLES30
 
struct  VertexElement
 Vertex element structure used to describe a single data element in a vertex for the input assembler. More...
 
struct  VertexFormat
 Vertex format structure used to describe a single vertex for the input assembler. More...
 
struct  VertexFormats
 
struct  VertexFormatStorage
 
struct  ViewVolume
 
class  WaveSpectrum
 
struct  WebGPUConstantBufferBinding
 
struct  WindowData
 
struct  WorldOptions
 

Typedefs

typedef TerrainQueryData< double > ElevationQueryData
 
typedef TerrainQueryData< unsigned char > ColorQueryData
 
typedef glm::vec2 Vector2
 
typedef glm::dvec2 Vector2d
 
typedef glm::vec3 Vector3
 
typedef glm::dvec3 Vector3d
 
typedef glm::vec4 Vector4
 
typedef glm::dvec4 Vector4d
 
typedef glm::mat4 Matrix
 
typedef Geometry::Plane Plane
 
typedef Geometry::BoundingBox BoundingBox
 
typedef glm::vec2 vec2
 
typedef glm::vec3 vec3
 
typedef glm::vec4 vec4
 
typedef glm::mat4 mat4
 
typedef void TerrainQueryCallback(TerrainQueryResults *results)
 
typedef std::lock_guard< RasterSourceReadLock
 
typedef std::lock_guard< RasterSourceWriteLock
 
using RasterSourcePtr = std::shared_ptr< RasterSource >
 
using ComponentIndex = uint32_t
 Type used to track component indexes in pools.
 
using SizeType = ComponentIndex
 Type used to track the size of pools.
 
template<typename T >
using Atomic = std::atomic< T >
 
using PointerId = size_t
 
typedef std::thread Thread
 
typedef std::mutex Mutex
 
typedef std::lock_guard< Mutex > LockGuard
 
typedef std::unique_lock< Mutex > UniqueLock
 
template<typename T >
using Future = std::future< T >
 
typedef int64_t TimePerf
 
typedef int64_t Time
 
template<class HandleType , class ResourceType >
using ResourceMap = ResourceMapBase< HandleType, ResourceType, PoolStoragePolicy< HandleType, ResourceType >, DefaultLockingPolicy, DefaultVerificationPolicy >
 Resource map used to store graphics device housekeeping resources.
 
template<typename HandleType , typename ResourceType >
using SafeResourceMap = ResourceMapBase< HandleType, ResourceType, PoolStoragePolicy< HandleType, ResourceType >, MutexLockingPolicy, DefaultVerificationPolicy >
 
typedef Handle_t< struct RasterizerStateRasterizerStateHandle
 
typedef Handle_t< struct DepthStencilStateDepthStencilStateHandle
 
typedef Handle_t< struct BlendStateBlendStateHandle
 
typedef Handle_t< InputLayoutTag > InputLayoutHandle
 
typedef Handle_t< BufferTag > BufferHandle
 
typedef Handle_t< BufferTag, BufferHandleVertexBufferHandle
 
typedef Handle_t< BufferTag, BufferHandleIndexBufferHandle
 
typedef Handle_t< VertexFormatTag > VertexFormatHandle
 
typedef Handle_t< VertexArrayObjectTag > VertexArrayObjectHandle
 
typedef intptr_t TextureNativeHandle
 
typedef Handle_t< TextureTag > TextureHandle
 
typedef Handle_t< SamplerTag > SamplerStateHandle
 
typedef Handle_t< EffectTag > EffectHandle
 
typedef Handle_t< ShaderTag > ShaderHandle
 
typedef Handle_t< RenderPipelineTag > RenderPipelineHandle
 
typedef Handle_t< ComputePipelineTag > ComputePipelineHandle
 
typedef Handle_t< RenderTargetTag > RenderTargetHandle
 
typedef Handle_t< DepthStencilTag > DepthStencilHandle
 
typedef Handle_t< VariableBindingTag > EffectVariableHandle
 
typedef Handle_t< ConstantBufferBindingTag > ConstantBufferBindingHandle
 
typedef Handle_t< TextureBindingTag > TextureBindingHandle
 
typedef Handle_t< SamplerStateBindingTag > SamplerStateBindingHandle
 
typedef Handle_t< BufferBindingTag > BufferBindingHandle
 
typedef Handle_t< TextureViewTag > TextureViewHandle
 
typedef Handle_t< FenceTag > FenceHandle
 
using DataFormat = Format
 
using TextureFormat = Format
 
using SamplerStateD3D11 = ResourcePointer< ID3D11SamplerState >
 
typedef std::pair< std::string, std::string > PreprocessorDefinition
 Preprocessor definition.
 
typedef std::vector< PreprocessorDefinitionPreprocessorDefinitions
 A set of preprocessor definitions.
 

Enumerations

enum struct  FileContentsHints : uint32_t { None = 0 , ZStdDecompress = 1 << 0 , BrotliDecompress = 1 << 1 }
 
enum class  PointerType { Mouse , Touch , Count , Unknown }
 
enum class  Key {
  A , B , C , D ,
  E , F , G , H ,
  I , J , K , L ,
  M , N , O , P ,
  Q , R , S , T ,
  U , V , W , X ,
  Y , Z , Zero , One ,
  Two , Three , Four , Five ,
  Six , Seven , Eight , Nine ,
  Left , Right , Up , Down ,
  Shift , LeftShift , RightShift , Control ,
  LeftControl , RightControl , Alt , LeftAlt ,
  RightAlt , CapsLock , Tab , Escape ,
  Enter , Space , Insert , Delete ,
  Backspace , Home , End , PageUp ,
  PageDown , F1 , F2 , F3 ,
  F4 , F5 , F6 , F7 ,
  F8 , F9 , F10 , F11 ,
  F12 , Count , None = -1
}
 
enum  MouseButton : int {
  Left , Right , Middle , Count ,
  NoButton
}
 
enum class  GraphicsDeviceType {
  Unknown = 0 , Default = 0 , OpenGL20 , OpenGLES30 ,
  Direct3D11 , Direct3D12 , Vulkan , WebGPU ,
  Null
}
 Contains types of graphics devices that may be supported. More...
 
enum class  Axis {
  PositiveX , NegativeX , PositiveY , NegativeY ,
  PositiveZ , NegativeZ , Count , Unknown = -1
}
 Axis definitions. More...
 
enum struct  FormatFlags : uint32_t {
  None = 0 , Alpha = 1 << 0 , VertexFormat = 1 << 1 , Depth = 1 << 2 ,
  Typeless = 1 << 3 , Integer = 1 << 4 , Unsigned = 1 << 5
}
 
enum class  Format : uint16_t {
  Unknown = 0 , R8_UNORM , R8G8_UNORM , R8G8B8_UNORM ,
  R8G8B8A8_UNORM , R16_UNORM , R16G16_UNORM , R16G16B16_UNORM ,
  R16G16B16A16_UNORM , R8_SNORM , R8G8_SNORM , R8G8B8_SNORM ,
  R8G8B8A8_SNORM , R16_SNORM , R16G16_SNORM , R16G16B16_SNORM ,
  R16G16B16A16_SNORM , R8_UINT , R8G8_UINT , R8G8B8_UINT ,
  R8G8B8A8_UINT , R16_UINT , R16G16_UINT , R16G16B16_UINT ,
  R16G16B16A16_UINT , R32_UINT , R32G32_UINT , R32G32B32_UINT ,
  R32G32B32A32_UINT , R8_SINT , R8G8_SINT , R8G8B8_SINT ,
  R8G8B8A8_SINT , R16_SINT , R16G16_SINT , R16G16B16_SINT ,
  R16G16B16A16_SINT , R32_SINT , R32G32_SINT , R32G32B32_SINT ,
  R32G32B32A32_SINT , R16_FLOAT , R16G16_FLOAT , R16G16B16_FLOAT ,
  R16G16B16A16_FLOAT , R32_FLOAT , R32G32_FLOAT , R32G32B32_FLOAT ,
  R32G32B32A32_FLOAT , D16_UNORM , D24_UNORM , D24S8_UNORM ,
  D32_FLOAT , R32_TYPELESS , R16_TYPELESS , R8T ,
  R8G8T , R8G8B8T , R8G8B8A8T , B8G8R8 ,
  B8G8R8A8 , A8_UNORM , BC1_TYPELESS , BC1_UNORM ,
  BC1_UNORM_SRGB , BC2_TYPELESS , BC2_UNORM , BC2_UNORM_SRGB ,
  BC3_TYPELESS , BC3_UNORM , BC3_UNORM_SRGB , BC4_TYPELESS ,
  BC4_UNORM , BC4_SNORM , BC5_TYPELESS , BC5_UNORM ,
  BC5_SNORM , BC6H_SIGNED_FLOAT_RGB , BC6H_UNSIGNED_FLOAT_RGB , BC7_UNORM_RGBA ,
  BC7_UNORM_SRGBA , PVRTC1_2BPP_UNORM_RGB , PVRTC1_4BPP_UNORM_RGB , PVRTC1_2BPP_UNORM_RGBA ,
  PVRTC1_4BPP_UNORM_RGBA , EAC_BLOCK8_UNSIGNED_FLOAT_R , EAC_BLOCK8_SIGNED_FLOAT_R , EAC_BLOCK16_UNSIGNED_FLOAT_RG ,
  EAC_BLOCK16_SIGNED_FLOAT_RG , ETC2_BLOCK8_UNORM_RGB , ETC2_BLOCK8_UNORM_SRGB , ETC2_BLOCK16_UNORM_RGBA ,
  ETC2_BLOCK16_UNORM_SRGBA , ASTC_4x4_UNORM_RGBA , ASTC_5x4_UNORM_RGBA , ASTC_5x5_UNORM_RGBA ,
  ASTC_6x5_UNORM_RGBA , ASTC_6x6_UNORM_RGBA , ASTC_8x5_UNORM_RGBA , ASTC_8x6_UNORM_RGBA ,
  ASTC_8x8_UNORM_RGBA , ASTC_10x5_UNORM_RGBA , ASTC_10x6_UNORM_RGBA , ASTC_10x8_UNORM_RGBA ,
  ASTC_10x10_UNORM_RGBA , ASTC_12x10_UNORM_RGBA , ASTC_12x12_UNORM_RGBA , ASTC_4x4_UNORM_SRGBA ,
  ASTC_5x4_UNORM_SRGBA , ASTC_5x5_UNORM_SRGBA , ASTC_6x5_UNORM_SRGBA , ASTC_6x6_UNORM_SRGBA ,
  ASTC_8x5_UNORM_SRGBA , ASTC_8x6_UNORM_SRGBA , ASTC_8x8_UNORM_SRGBA , ASTC_10x5_UNORM_SRGBA ,
  ASTC_10x6_UNORM_SRGBA , ASTC_10x8_UNORM_SRGBA , ASTC_10x10_UNORM_SRGBA , ASTC_12x10_UNORM_SRGBA ,
  ASTC_12x12_UNORM_SRGBA , R8G8B8_UNORM_SRGB , R8G8B8A8_UNORM_SRGB , R10G10B10A2_TYPELESS ,
  R10G10B10A2_UNORM , R10G10B10A2_UINT , R11G11B10_FLOAT , R5G6B5_UNORM ,
  R5G5B5A1_UNORM , R4G4B4A4_UNORM , R9G9B9E5_FLOAT , MAT4X4_FLOAT ,
  Format_Size , TextureFormat_Size = Format_Size , X16_FLOAT = R16_FLOAT , X16Y16_FLOAT = R16G16_FLOAT ,
  X16Y16Z16_FLOAT = R16G16B16_FLOAT , X16Y16Z16W16_FLOAT = R16G16B16A16_FLOAT , X32_FLOAT = R32_FLOAT , X32Y32_FLOAT = R32G32_FLOAT ,
  X32Y32Z32_FLOAT = R32G32B32_FLOAT , X32Y32Z32W32_FLOAT = R32G32B32A32_FLOAT
}
 
enum class  LoadOp : uint32_t { Undefined , Clear , Load }
 
enum class  StoreOp : uint32_t { Undefined , Store , Discard }
 
enum class  EffectDescriptionType { File , Source }
 Type of contents in effect description. More...
 
enum  GraphicsDeviceFlags : int {
  None = 0x0000 , Debug = 1 << 0 , EnableDiagnostics = 1 << 1 , EnableShaderCache = 1 << 2 ,
  EnableTraceLogging = 1 << 3 , DumpShaderContents = 1 << 4 , ForceSoftwareRendering = 1 << 5 , UseSharedSurface = 1 << 6 ,
  UseESCompatibility = 1 << 7 , UseSwapEffectDiscard = 1 << 8 , UseOpenGLClipControl = 1<<9
}
 Flags controlling the behavior of a graphics device. More...
 
enum class  ResourceDimensions {
  Unknown = 0 , Buffer , Texture1D , Texture1DArray ,
  Texture2D , Texture2DArray , Texture2DMS , Texture2DMSArray ,
  Texture3D , Texture3DArray , TextureCube , TextureCubeArray ,
  RenderBuffer , ResourceDimensions_Size
}
 
enum class  ElementSemantic : uint16_t {
  Position , Normal , Color , TextureCoordinate ,
  Tangent , InstanceVector , InstanceMatrix , Semantic_Size
}
 Element semantics used to map data to the shader stage. More...
 
enum class  InputType : uint16_t { VertexData = 0 , InstanceData }
 Input types for the input assembler. More...
 
enum  WebGPUConstantBufferUsage {
  ShaderStage_None = 0x00000000 , ShaderStage_Vertex = 0x00000001 , ShaderStage_Fragment = 0x00000002 , ShaderStage_Compute = 0x00000004 ,
  ShaderStage_Force32 = 0x7FFFFFFF
}
 
enum  WebGPUConstantBufferType { UniformBuffer , Texture , Sampler }
 

Functions

void setChanged (Cogs::Core::Context *context, Cogs::ComponentModel::Component *component, Reflection::FieldId fieldId)
 Must be Called after changing a Component field. Mark field changed. Request engine update.
 
template<typename DataType >
void assignField (Cogs::Core::Context *context, EntityId entityId, const ComponentId componentId, const Cogs::Reflection::FieldId fieldId, const DataType *data, int count)
 Assign value to a Component field.
 
template<typename DataType >
void assignFieldSubset (Cogs::Core::Context *context, EntityId entityId, const ComponentId componentId, const Cogs::Reflection::FieldId fieldId, const DataType *data, int offset, int count)
 
template<typename FieldType >
FieldType * getField (Cogs::Core::Context *context, EntityId entityId, const ComponentId componentId, const Cogs::Reflection::FieldId fieldId)
 
template<typename FieldType >
void setField (Cogs::Core::Context *context, EntityId entityId, const ComponentId componentId, const Cogs::Reflection::FieldId fieldId, FieldType &&data)
 
template<typename FieldType >
void setVectorField (Cogs::Core::Context *context, EntityId entityId, const ComponentId componentId, const Cogs::Reflection::FieldId fieldId, FieldType &&data, size_t index)
 
 ENABLE_ENUM_FLAGS (FileContentsHints)
 
bool loadAsset (Cogs::Core::Context *context, const rapidjson::Document &document, Cogs::Core::AssetLoadFlags flags, ComponentModel::Entity *root)
 
size_t countLines (const StringView &source, size_t)
 
const char * findLineOffset (const StringView &source, size_t offset, int direction)
 
StringView findLine (const StringView &source, size_t offset, int direction)
 
template<class T , class... Types>
T & get (std::tuple< Types... > &tuple)
 
template<class T , class... Types>
const T & get (const std::tuple< Types... > &tuple)
 
template<typename... Ts, typename F >
void for_each_in_tuple (std::tuple< Ts... > &t, F f)
 Utility method for executing the given function over all members in a tuple.
 
ClipmapMesh createMesh (IBuffers *buffers, double left, double bottom, double right, double top, size_t numberOfPartitionsX, size_t numberOfPartitionsY, const VertexFormatHandle &vertexFormat)
 
ClipmapMesh createSimpleMesh (IBuffers *buffers, double left, double bottom, double right, double top, size_t numberOfPartitionsX, size_t numberOfPartitionsY, const VertexFormatHandle &vertexFormat)
 
ClipmapMesh createDegenerateMesh (IBuffers *buffers, size_t clipmapSegments, size_t clipmapPosts, const VertexFormatHandle &vertexFormat)
 
void initializeGeometry (ClipmapGeometry &clipmapGeometry, IBuffers *buffers, size_t fillPatchPosts, size_t fillPatchSegments, size_t clipmapSegments, size_t clipmapPosts)
 
void releaseMesh (ClipmapMesh &mesh, IBuffers *buffers)
 
void releaseGeometry (ClipmapGeometry &clipmapGeometry, IBuffers *buffers)
 
TextureOrigin updateOrigin (const Extent &currentExtent, const Extent &nextExtent, const int width, const int height, const TextureOrigin &origin)
 
Vector2 calculateViewPosInClippedLevel (const ClipmapState &clipmapState, const ClipmapLevel &terrainLevel)
 
void calculateLevelParameters (const ClipmapLevel &terrainLevel, const std::vector< const ClipmapLevel * > &imageryLevels, LevelParameters &parameters, ImageryParameters &imageryParameters, const Vector3d center, const bool)
 
void calculateGlobalParameters (const ClipmapLevel &levelZero, const RenderContext &renderContext, const WorldOptions &worldOptions, const ClipmapState &clipmapState, GlobalParameters &globalParameters)
 
template<typename Parameters >
void applyParameters (IContext *context, const Parameters &parameters, BufferHandle bufferHandle)
 
RenderTexture createClipmapTexture (IGraphicsDevice *device, int width, int height, TextureFormat textureFormat, bool mipmap=false, glm::vec4 clearColor=glm::vec4(0))
 
void releaseClipmapTexture (IGraphicsDevice *device, RenderTexture &texture)
 
void clearClipmapTexture (IGraphicsDevice *device, RenderTexture &texture)
 
size_t getTextureSize (int width, int height, TextureFormat format)
 
void updateImageryExtent (Cogs::ClipmapLevel &imageryLevel, const Cogs::ClipmapLevel &terrainLevel)
 
void calculateNextExtent (double longitude, double latitude, const Cogs::ClipmapState &clipmapState, Cogs::ClipmapLevel &firstTerrainLevel)
 
void calculateLevelNextExtent (Cogs::ClipmapLevel &terrainLevel, const Cogs::ClipmapLevel &finerLevel, const Cogs::ClipmapState &clipmapState)
 
void loadTileData (BridgeRasterSource *source, RasterTile *tile, const size_t requestGeneration, const size_t rasterLevel, const size_t, const uint8_t *data, int width, int height, TextureFormat format, bool isHeight=false, float minZ=0, float maxZ=0)
 
void loadCallbackInternal (void *userData, int, int, int, TileData *dataPtr)
 
void loadCallback (void *userData, int level, int x, int y, TileData *dataPtr)
 
bool isCompressible (TextureFormat format)
 
TextureFormat getCompressedFormat (TextureFormat format)
 
bool isConvertible (TextureFormat format)
 
TextureFormat compressTileData (std::vector< uint8_t > &destination, const uint8_t *source, TextureFormat sourceFormat, int width, int height)
 
TextureFormat convertBitmapData (const uint8_t *data, const TileData *tileData, std::vector< uint8_t > &destination)
 
constexpr uint64_t mortonCode (uint16_t i, uint16_t j, uint16_t k)
 Interleave bits of 3 values to form the 3-way Morton code.
 
constexpr uint32_t mortonCode (uint16_t a, uint16_t b)
 Interleave bits of 2 values.
 
template<typename T >
bool isPowerOfTwo (T x)
 
uint8_t roundUpToPowerOfTwo (uint8_t x)
 
uint16_t roundUpToPowerOfTwo (uint16_t x)
 
uint16_t roundDownToPowerOfTwo (uint16_t x)
 
uint32_t roundUpToPowerOfTwo (uint32_t x)
 
uint64_t roundUpToPowerOfTwo (uint64_t x)
 
uint8_t roundUpToPowerOfTwoShift (uint8_t x)
 
uint16_t roundUpToPowerOfTwoShift (uint16_t x)
 
uint32_t roundUpToPowerOfTwoShift (uint32_t x)
 
uint64_t roundUpToPowerOfTwoShift (uint64_t x)
 
template<typename ClassType , typename FieldType >
size_t memberOffset (FieldType ClassType::*ptr)
 Find the offset of a pointer to member in a class or struct.
 
constexpr uint32_t make2CCLE (uint8_t a, uint8_t b)
 
constexpr uint32_t make2CCBE (uint8_t a, uint8_t b)
 
constexpr uint32_t make4CCLE (uint8_t a, uint8_t b, uint8_t c, uint8_t d)
 
constexpr uint32_t make4CCBE (uint8_t a, uint8_t b, uint8_t c, uint8_t d)
 
const char * getFoundationVersionString ()
 
template<typename T >
interpolateFn (const T &s, const T &d, float t)
 
template<>
glm::quat interpolateFn< glm::quat > (const glm::quat &s, const glm::quat &d, float t)
 
COGSFOUNDATION_API size_t murmur2 (const void *bytes, const size_t length) noexcept
 Implementation of the MurmurHash2 algorithm.
 
constexpr size_t fnv1a (uint8_t data, size_t hashValue) noexcept
 Hashes a single byte using the fnv1a algorithm.
 
constexpr size_t fnv1a (const void *bytes, size_t length, size_t hashValue=Details::FNV_offset_basis) noexcept
 Implementation of the FNV-1a algorithm for a block of memory.
 
constexpr size_t hash () noexcept
 Simple getter function that returns the initial value for fnv1a hashing.
 
template<typename T , typename std::enable_if< std::is_integral< T >::value||std::is_enum< T >::value||std::is_floating_point< T >::value, int >::type * = nullptr>
constexpr size_t hash (T data, size_t hashValue=hash()) noexcept
 Hash function for integer and floating point types. (And enums.)
 
constexpr size_t hash (const char *str, size_t hashValue=hash()) noexcept
 Hash function for hashing Null terminated C character strings.
 
COGSFOUNDATION_API size_t hashLowercase (std::string_view str, size_t hashValue=Cogs::hash()) noexcept
 Get the hash code of the string converted to lowercase.
 
constexpr size_t hash (const void *mem, size_t size, size_t hashValue=hash()) noexcept
 Hash a non-descript block of memory.
 
constexpr size_t hash (std::string_view str, size_t hashValue=hash()) noexcept
 Generic hash function specialization for strings (std::string, std::string_view, Cogs::StringView).
 
template<typename T , typename U >
constexpr size_t hashSequence (const T &t, const U &u)
 Hash the last two items in a sequence of objects.
 
template<typename T , typename U , typename... Args>
constexpr size_t hashSequence (const T &t, const U &u, Args... args)
 Calculates a single hash value from a sequence of objects.
 
COGSFOUNDATION_API void * stbAlloc (size_t size, void *userData=nullptr)
 
COGSFOUNDATION_API void * stbRealloc (void *ptr, size_t oldSize, size_t newSize)
 
COGSFOUNDATION_API void stbFree (void *ptr, void *userData=nullptr)
 
COGSFOUNDATION_API bool isBeingDebugged ()
 Return true if the application is running under a debugger.
 
COGSFOUNDATION_API std::string getCallstack ()
 Returns the current callstack as a string.
 
COGSFOUNDATION_API TimePerf perfTime ()
 High resolution performance timer. Returns an implementation defined absolute timestamp, can be subtracted to get a time duration.
 
COGSFOUNDATION_API Time currentTime ()
 High resolution clock time (NTP / UTC time). Returns an implementation defined absolute timestamp, can be subtracted to get a time duration.
 
COGSFOUNDATION_API TimePerf perfTimeReference ()
 Functions that provide a reference time point at the start of the application startup. Useful for application uptime or converting absolute timestamps to a narrow value range.
 
COGSFOUNDATION_API Time currentTimeReference ()
 
COGSFOUNDATION_API int64_t perfTimeToMicroseconds (TimePerf time)
 Convertion functions for timestamps.
 
COGSFOUNDATION_API int64_t perfTimeToMilliseconds (TimePerf time)
 
COGSFOUNDATION_API double perfTimeToSeconds (TimePerf time)
 
COGSFOUNDATION_API int64_t currentTimeToMicroseconds (Time time)
 
COGSFOUNDATION_API int64_t currentTimeToMilliseconds (Time time)
 
COGSFOUNDATION_API double currentTimeToSeconds (Time time)
 
template<typename T , typename DeleterFunction >
Pointer< T > makePointer (T *t, DeleterFunction deleterFunc)
 Construct a Pointer<T> instance from the given pointer and deleter function.
 
std::ostream & operator<< (std::ostream &stream, const Cogs::StringView &stringView)
 Stream operator out provided to make it possible to insert Cogs::StringView into streams.
 
std::string & stringReplaceAll (std::string &str, std::string_view from, std::string_view to)
 
bool stringStartsWith (std::string_view str, std::string_view beginning)
 
bool stringEndsWith (std::string_view str, std::string_view ending)
 
std::string stringToLower (std::string_view input)
 
std::string stringToUpper (std::string_view input)
 
std::string stringConcatenate (std::initializer_list< std::string_view > strList)
 
std::string stringJoin (std::string_view separator, std::initializer_list< std::string_view > strList)
 
bool operator< (const StringView &left, const StringView &right) noexcept
 Lexicographically compare two string views.
 
bool operator> (const StringView &left, const StringView &right) noexcept
 Lexicographically compare two string views.
 
bool operator<= (const StringView &left, const StringView &right) noexcept
 Lexicographically compare two string views.
 
bool operator>= (const StringView &left, const StringView &right) noexcept
 Lexicographically compare two string views.
 
bool operator== (const char *left, const StringView &right) noexcept
 Char ptr equality operator.
 
bool operator== (const StringView &left, const char *right) noexcept
 Char ptr equality operator.
 
bool operator== (const std::string &left, const StringView &right) noexcept
 std::string equality operator.
 
bool operator== (const std::string_view &left, const StringView &right) noexcept
 std::string_view equality operator.
 
template<typename Collection >
uint8_t getSlot (Collection &collection, const StringView &name)
 
uint64_t encode (uint8_t vsSlot, uint8_t hsSlot, uint8_t dsSlot, uint8_t gsSlot, uint8_t psSlot)
 
uint64_t encode (uint8_t csSlot)
 
template<typename Effect >
uint64_t getSlots (Effect &effect, const StringView &name)
 
template<typename Effect >
int64_t getTextureSlots (Effect &effect, const StringView &name)
 
template<typename Effect >
int64_t getSamplerSlots (Effect &effect, const StringView &name)
 
template<typename Effect >
int64_t getBufferUAVSlots (Effect &effect, const StringView &name)
 
template<typename Effect >
int64_t getBufferSRVSlots (Effect &effect, const StringView &name)
 
template<typename T , size_t Size>
void decode (int64_t handle, T(&slots)[Size])
 
uint8_t decode (int64_t handle)
 
void * glTextureFakeAddress (unsigned glName)
 
void * glBufferFakeAddress (unsigned glName)
 
COGSRENDERING_DLL_API void RegisterGPUResource (void *handle, size_t size, MemBlockType type, const OsoMPAttribute *attributes=nullptr, uint32_t noOfAttributes=0)
 
COGSRENDERING_DLL_API void RegisterGPUResourceAttributes (void *handle, const OsoMPAttribute *attributes, uint32_t noOfAttributes)
 
COGSRENDERING_DLL_API void UnregisterGPUResource (void *handle)
 
bool setUpGLDebugging (const char *contextName, GLContextBase::Platform platform)
 
bool getGLFuncPointers ()
 
bool getGLES3FuncPointers (GLContextBase::Platform platform)
 
template<typename T >
bool HandleIsValid (const Handle_t< T > handle)
 
template<typename T , typename U >
bool HandleIsValid (const Handle_t< T, U > handle)
 
bool isDebug ()
 
 COGS_RENDERING_ENABLE_ENUM_FLAGS (FormatFlags)
 
COGSRENDERING_DLL_API const FormatInfogetFormatInfo (Format format)
 
COGSRENDERING_DLL_API DataFormat parseDataFormat (const StringView &format)
 
const char * direct3D11ReturnCodeAsString (HRESULT hr)
 
const char * getUsageString (Usage::EUsage usage)
 
const char * getAccessModeString (uint32_t accessMode)
 
const char * getBindFlagsString (uint32_t bindFlags)
 
const char * getString (DXGI_FORMAT format)
 
const char * getString (D3D11_USAGE usage)
 
const char * getString (D3D11_CPU_ACCESS_FLAG flags)
 
const char * getString (D3D11_BIND_FLAG flags)
 
const char * getString (D3D11_TEXTURE2D_DESC desc)
 
const char * getString (D3D11_TEXTURE3D_DESC desc)
 
const CD3DX12_HEAP_PROPERTIES defaultHeapProperties (D3D12_HEAP_TYPE_DEFAULT)
 
const CD3DX12_HEAP_PROPERTIES uploadHeapProperties (D3D12_HEAP_TYPE_UPLOAD)
 
const CD3DX12_HEAP_PROPERTIES readbackHeapProperties (D3D12_HEAP_TYPE_READBACK)
 
void setResourceBarrier (ID3D12GraphicsCommandList *commandList, ID3D12Resource *resource, D3D12_RESOURCE_STATES stateBefore, D3D12_RESOURCE_STATES stateAfter)
 
void setResourceState (ID3D12GraphicsCommandList *commandList, ResourceD3D12 &resource, D3D12_RESOURCE_STATES stateAfter)
 
 COGS_RENDERING_ENABLE_ENUM_FLAGS (TextureFlags::ETextureFlags)
 
void enableGLDebugging ()
 
void copySubBuffer (GLenum, GLuint dstBuffer, GLintptr dstOffset, GLenum, GLuint srcBuffer, GLintptr srcOffset, GLsizeiptr size)
 
const char * getResourceDimensionsName (ResourceDimensions target)
 
size_t getBlockSize (TextureFormat format)
 
TextureExtent getBlockExtent (TextureFormat format)
 
size_t getComponents (TextureFormat format)
 
uint32_t getMipLevels (const uint32_t width, const uint32_t height)
 
uint32_t getMipSize (uint32_t size, uint32_t level)
 
VertexFormatStoragegetStorage ()
 
StringView COGSRENDERING_DLL_API getElementSemanticName (ElementSemantic semantic)
 
uint32_t COGSRENDERING_DLL_API getSize (const Cogs::VertexFormat &vertexFormat)
 
uint32_t COGSRENDERING_DLL_API getSize (VertexFormatHandle vertexFormatHandle)
 
size_t COGSRENDERING_DLL_API getHash (const Cogs::VertexFormat &vertexFormat)
 
size_t COGSRENDERING_DLL_API getHash (VertexFormatHandle vertexFormatHandle)
 
size_t hash (const VertexElement &element, size_t hashValue=Cogs::hash())
 Calculate a hash value for the specified vertex element.
 
size_t hash (const Cogs::VertexFormat &format, size_t hashValue=Cogs::hash())
 Calculate a hash value for the given vertex format.
 
bool setImageLayout (VkCommandBuffer commandBuffer, VkImage image, VkImageAspectFlags aspectMask, VkImageLayout oldLayout, VkImageLayout newLayout, VkImageSubresourceRange range={ VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1 })
 
bool setImageLayout (VkCommandBuffer commandBuffer, TextureVK &texture, VkImageAspectFlags aspectMask, VkImageLayout newLayout, VkImageSubresourceRange range={ VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1 })
 

Variables

TextureFormat formatMap []
 
std::unordered_map< int64_t, RasterSourcePtr > activeSources
 
constexpr Cogs::Logging::Log logger = Cogs::Logging::getLogger("FileSystemWatcher")
 
const int kMaxVertexInputSlots = 32
 
const size_t kMaxRenderTargets11 = 8
 
const CD3DX12_HEAP_PROPERTIES defaultHeapProperties
 
const CD3DX12_HEAP_PROPERTIES uploadHeapProperties
 
const CD3DX12_HEAP_PROPERTIES readbackHeapProperties
 
const size_t kMaxRenderTargets = 8
 
const size_t NumAttributeSemanticsGL20 = 7
 
const size_t NumAttributeSemanticSlotsGL20 = 8
 
const size_t MaxVertexAttributesGL20 = NumAttributeSemanticsGL20 * NumAttributeSemanticSlotsGL20
 
const unsigned char InvalidAttributeLocationGL20 = 0xFF
 
const WGPUTextureFormat TextureFormatsWebGPU []
 
const WGPUVertexFormat VertexFormatsWebGPU []
 

Detailed Description

Contains all Cogs related functionality.

Define we can check on if size_t literal suffix is defined.

Main Cogs namespace.

Hashing functions for COGS.

DO NOT mix these hashing functions with STL std::hash for same data types. DO NOT serialize hash values. 32 and 64 bit incompatible. No guarantee for backwards compatibility.

Typedef Documentation

◆ Atomic

template<typename T >
using Cogs::Atomic = typedef std::atomic<T>

Definition at line 107 of file Atomic.h.

◆ BlendStateHandle

Definition at line 226 of file Common.h.

◆ BoundingBox

typedef Geometry::BoundingBox Cogs::BoundingBox

Definition at line 35 of file ClipmapTerrainTypes.h.

◆ BufferBindingHandle

typedef Handle_t<BufferBindingTag> Cogs::BufferBindingHandle

Definition at line 254 of file Common.h.

◆ BufferHandle

typedef Handle_t<BufferTag> Cogs::BufferHandle

Definition at line 230 of file Common.h.

◆ ColorQueryData

typedef TerrainQueryData<unsigned char> Cogs::ColorQueryData

Definition at line 39 of file ClipmapQueryHandler.h.

◆ ComponentIndex

using Cogs::ComponentIndex = typedef uint32_t

Type used to track component indexes in pools.

Definition at line 16 of file Component.h.

◆ ComputePipelineHandle

typedef Handle_t<ComputePipelineTag> Cogs::ComputePipelineHandle

Definition at line 245 of file Common.h.

◆ ConstantBufferBindingHandle

typedef Handle_t<ConstantBufferBindingTag> Cogs::ConstantBufferBindingHandle

Definition at line 251 of file Common.h.

◆ DataFormat

using Cogs::DataFormat = typedef Format

Definition at line 245 of file DataFormat.h.

◆ DepthStencilHandle

typedef Handle_t<DepthStencilTag> Cogs::DepthStencilHandle

Definition at line 248 of file Common.h.

◆ DepthStencilStateHandle

Definition at line 225 of file Common.h.

◆ EffectHandle

typedef Handle_t<EffectTag> Cogs::EffectHandle

Definition at line 242 of file Common.h.

◆ EffectVariableHandle

typedef Handle_t<VariableBindingTag> Cogs::EffectVariableHandle

Definition at line 250 of file Common.h.

◆ ElevationQueryData

Definition at line 38 of file ClipmapQueryHandler.h.

◆ FenceHandle

typedef Handle_t<FenceTag> Cogs::FenceHandle

Definition at line 258 of file Common.h.

◆ Future

template<typename T >
using Cogs::Future = typedef std::future<T>

Definition at line 66 of file Threads.h.

◆ IndexBufferHandle

Definition at line 232 of file Common.h.

◆ InputLayoutHandle

typedef Handle_t<InputLayoutTag> Cogs::InputLayoutHandle

Definition at line 228 of file Common.h.

◆ LockGuard

typedef std::lock_guard<Mutex> Cogs::LockGuard

Definition at line 63 of file Threads.h.

◆ mat4

typedef glm::mat4 Cogs::mat4

Definition at line 41 of file ClipmapTerrainTypes.h.

◆ Matrix

typedef glm::mat4 Cogs::Matrix

Definition at line 32 of file ClipmapTerrainTypes.h.

◆ Mutex

typedef std::mutex Cogs::Mutex

Definition at line 62 of file Threads.h.

◆ Plane

typedef Geometry::Plane Cogs::Plane

Definition at line 34 of file ClipmapTerrainTypes.h.

◆ PointerId

using Cogs::PointerId = typedef size_t

Definition at line 9 of file Gestures.h.

◆ PreprocessorDefinition

typedef std::pair<std::string, std::string> Cogs::PreprocessorDefinition

Preprocessor definition.

Definition at line 10 of file IEffects.h.

◆ PreprocessorDefinitions

A set of preprocessor definitions.

Definition at line 13 of file IEffects.h.

◆ RasterizerStateHandle

Definition at line 224 of file Common.h.

◆ RasterSourcePtr

using Cogs::RasterSourcePtr = typedef std::shared_ptr<RasterSource>

Definition at line 10 of file RasterSourceSubscription.h.

◆ ReadLock

typedef std::lock_guard<RasterSource> Cogs::ReadLock

Definition at line 39 of file RasterSource.h.

◆ RenderPipelineHandle

typedef Handle_t<RenderPipelineTag> Cogs::RenderPipelineHandle

Definition at line 244 of file Common.h.

◆ RenderTargetHandle

typedef Handle_t<RenderTargetTag> Cogs::RenderTargetHandle

Definition at line 247 of file Common.h.

◆ ResourceMap

template<class HandleType , class ResourceType >
using Cogs::ResourceMap = typedef ResourceMapBase<HandleType, ResourceType, PoolStoragePolicy<HandleType, ResourceType>, DefaultLockingPolicy, DefaultVerificationPolicy>

Resource map used to store graphics device housekeeping resources.

Definition at line 180 of file ResourceMap.h.

◆ SafeResourceMap

template<typename HandleType , typename ResourceType >
using Cogs::SafeResourceMap = typedef ResourceMapBase<HandleType, ResourceType, PoolStoragePolicy<HandleType, ResourceType>, MutexLockingPolicy, DefaultVerificationPolicy>

Definition at line 183 of file ResourceMap.h.

◆ SamplerStateBindingHandle

typedef Handle_t<SamplerStateBindingTag> Cogs::SamplerStateBindingHandle

Definition at line 253 of file Common.h.

◆ SamplerStateD3D11

using Cogs::SamplerStateD3D11 = typedef ResourcePointer<ID3D11SamplerState>

Definition at line 34 of file TexturesD3D11.h.

◆ SamplerStateHandle

typedef Handle_t<SamplerTag> Cogs::SamplerStateHandle

Definition at line 240 of file Common.h.

◆ ShaderHandle

typedef Handle_t<ShaderTag> Cogs::ShaderHandle

Definition at line 243 of file Common.h.

◆ SizeType

using Cogs::SizeType = typedef ComponentIndex

Type used to track the size of pools.

Definition at line 19 of file Component.h.

◆ TerrainQueryCallback

typedef void Cogs::TerrainQueryCallback(TerrainQueryResults *results)

Definition at line 174 of file CogsTerrainBase.h.

◆ TextureBindingHandle

typedef Handle_t<TextureBindingTag> Cogs::TextureBindingHandle

Definition at line 252 of file Common.h.

◆ TextureFormat

using Cogs::TextureFormat = typedef Format

Definition at line 246 of file DataFormat.h.

◆ TextureHandle

typedef Handle_t<TextureTag> Cogs::TextureHandle

Definition at line 239 of file Common.h.

◆ TextureNativeHandle

typedef intptr_t Cogs::TextureNativeHandle

Definition at line 238 of file Common.h.

◆ TextureViewHandle

typedef Handle_t<TextureViewTag> Cogs::TextureViewHandle

Definition at line 256 of file Common.h.

◆ Thread

typedef std::thread Cogs::Thread

Definition at line 61 of file Threads.h.

◆ Time

typedef int64_t Cogs::Time

Definition at line 14 of file Timer.h.

◆ TimePerf

typedef int64_t Cogs::TimePerf

Definition at line 13 of file Timer.h.

◆ UniqueLock

typedef std::unique_lock<Mutex> Cogs::UniqueLock

Definition at line 64 of file Threads.h.

◆ vec2

typedef glm::vec2 Cogs::vec2

Definition at line 37 of file ClipmapTerrainTypes.h.

◆ vec3

typedef glm::vec3 Cogs::vec3

Definition at line 38 of file ClipmapTerrainTypes.h.

◆ vec4

typedef glm::vec4 Cogs::vec4

Definition at line 39 of file ClipmapTerrainTypes.h.

◆ Vector2

typedef glm::vec2 Cogs::Vector2

Definition at line 23 of file ClipmapTerrainTypes.h.

◆ Vector2d

typedef glm::dvec2 Cogs::Vector2d

Definition at line 24 of file ClipmapTerrainTypes.h.

◆ Vector3

typedef glm::vec3 Cogs::Vector3

Definition at line 26 of file ClipmapTerrainTypes.h.

◆ Vector3d

typedef glm::dvec3 Cogs::Vector3d

Definition at line 27 of file ClipmapTerrainTypes.h.

◆ Vector4

typedef glm::vec4 Cogs::Vector4

Definition at line 29 of file ClipmapTerrainTypes.h.

◆ Vector4d

typedef glm::dvec4 Cogs::Vector4d

Definition at line 30 of file ClipmapTerrainTypes.h.

◆ VertexArrayObjectHandle

typedef Handle_t<VertexArrayObjectTag> Cogs::VertexArrayObjectHandle

Definition at line 236 of file Common.h.

◆ VertexBufferHandle

Definition at line 231 of file Common.h.

◆ VertexFormatHandle

typedef Handle_t<VertexFormatTag> Cogs::VertexFormatHandle

Definition at line 234 of file Common.h.

◆ WriteLock

typedef std::lock_guard<RasterSource> Cogs::WriteLock

Definition at line 40 of file RasterSource.h.

Enumeration Type Documentation

◆ Axis

enum class Cogs::Axis
strong

Axis definitions.

The order of these matches the face order for cube maps.

Definition at line 188 of file Common.h.

◆ EffectDescriptionType

enum class Cogs::EffectDescriptionType
strong

Type of contents in effect description.

Enumerator
File 

File names.

Source 

Shader source.

Definition at line 43 of file IEffects.h.

◆ ElementSemantic

enum class Cogs::ElementSemantic : uint16_t
strong

Element semantics used to map data to the shader stage.

Enumerator
Position 

Position semantic.

Normal 

Normal semantic.

Color 

Color semantic.

TextureCoordinate 

Texture coordinate semantic.

Tangent 

Tangent semantic.

InstanceVector 

Instance vector semantic.

InstanceMatrix 

Instance matrix semantic.

Definition at line 13 of file VertexFormat.h.

◆ FileContentsHints

enum struct Cogs::FileContentsHints : uint32_t
strong
Enumerator
ZStdDecompress 

A hint that the contents are Zstandard (Facebook) compressed and is allowed to be decompressed during transfer if this flag is removed.

BrotliDecompress 

A hint that the contents are Brotli (Google) compressed and is allowed to be decompressed during transfer if this flag is removed.

Definition at line 11 of file FileContents.h.

◆ Format

enum class Cogs::Format : uint16_t
strong

Definition at line 21 of file DataFormat.h.

◆ FormatFlags

enum struct Cogs::FormatFlags : uint32_t
strong

Definition at line 9 of file DataFormat.h.

◆ GraphicsDeviceFlags

Flags controlling the behavior of a graphics device.

Enumerator
None 

Default flags.

Debug 

If available, the device will operate in debug mode, performing additional validation of input data, state changes etc.

When compiling in debug mode, a debug device is always created.

EnableDiagnostics 

If available, the device will print diagnostic information to the log.

The information printed is usually more extensive when this flag is combined with the

See also
Debug flag.

When compiling in debug mode, diagnostic output is always enabled.

EnableShaderCache 

Enables using a shader cache to avoid recompiling previously seen shaders.

EnableTraceLogging 

Enables trace logging.

May impact performance negatively.

DumpShaderContents 

Dump shader contents for debugging.

ForceSoftwareRendering 

Force software rendering.

UseSharedSurface 

Use shared surface for D3D9 interop.

UseESCompatibility 

Instead of creating an ES2 context via WGL, create a full GL context and check for ARB_ES2_compatibilty.

UseSwapEffectDiscard 

Under DX11 the default swap effect is FLIP_DISCARD, however there are some systems where this does not work.

This flag forces the engine to fall back to using DISCARD on these machines.

UseOpenGLClipControl 

For OpenGL / OpenGLES backends.

Enable clip_control when available.

Definition at line 27 of file IGraphicsDevice.h.

◆ GraphicsDeviceType

enum class Cogs::GraphicsDeviceType
strong

Contains types of graphics devices that may be supported.

Enumerator
Unknown 

Unknown type of graphics device.

Default 

Default type of graphics device, same as unknown.

OpenGL20 

Graphics device using OpenGL, supporting at least OpenGL 2.0.

OpenGLES30 

Graphics device using the OpenGLES 3.0 API.

Direct3D11 

Graphics device using the Direct3D 11 API.

Direct3D12 

Graphics device using the Direct3D 12 API.

Vulkan 

Graphics device using the Vulkan API.

WebGPU 

Graphics device using the WebGPU API Backend.

Null 

Null device that implements no rendering functionality.

Definition at line 47 of file Base.h.

◆ InputType

enum class Cogs::InputType : uint16_t
strong

Input types for the input assembler.

Enumerator
VertexData 

Per vertex data.

InstanceData 

Per instance data.

Definition at line 28 of file VertexFormat.h.

◆ Key

enum class Cogs::Key
strong

Definition at line 10 of file Keyboard.h.

◆ LoadOp

enum class Cogs::LoadOp : uint32_t
strong

Definition at line 12 of file IContext.h.

◆ MouseButton

enum Cogs::MouseButton : int

Definition at line 14 of file Mouse.h.

◆ PointerType

enum class Cogs::PointerType
strong

Definition at line 11 of file Gestures.h.

◆ ResourceDimensions

enum class Cogs::ResourceDimensions
strong

Definition at line 15 of file TextureData.h.

◆ StoreOp

enum class Cogs::StoreOp : uint32_t
strong

Definition at line 18 of file IContext.h.

◆ WebGPUConstantBufferType

enum Cogs::WebGPUConstantBufferType

Definition at line 18 of file EffectsWebGPU.h.

◆ WebGPUConstantBufferUsage

enum Cogs::WebGPUConstantBufferUsage

Definition at line 10 of file EffectsWebGPU.h.

Function Documentation

◆ applyParameters()

template<typename Parameters >
void Cogs::applyParameters ( IContext context,
const Parameters &  parameters,
BufferHandle  bufferHandle 
)

Definition at line 250 of file ClipmapRenderer.cpp.

◆ assignField()

template<typename DataType >
void Cogs::assignField ( Cogs::Core::Context context,
EntityId  entityId,
const ComponentId  componentId,
const Cogs::Reflection::FieldId  fieldId,
const DataType *  data,
int  count 
)

Assign value to a Component field.

Definition at line 35 of file FieldSetter.h.

References Cogs::Reflection::Type::getSize(), Cogs::Reflection::TypeDatabase::getType(), and setChanged().

◆ assignFieldSubset()

template<typename DataType >
void Cogs::assignFieldSubset ( Cogs::Core::Context context,
EntityId  entityId,
const ComponentId  componentId,
const Cogs::Reflection::FieldId  fieldId,
const DataType *  data,
int  offset,
int  count 
)

Definition at line 54 of file FieldSetter.h.

◆ calculateGlobalParameters()

void Cogs::calculateGlobalParameters ( const ClipmapLevel levelZero,
const RenderContext renderContext,
const WorldOptions worldOptions,
const ClipmapState clipmapState,
GlobalParameters &  globalParameters 
)
inline

Definition at line 148 of file ClipmapParameterCalculation.h.

◆ calculateLevelNextExtent()

void Cogs::calculateLevelNextExtent ( Cogs::ClipmapLevel terrainLevel,
const Cogs::ClipmapLevel finerLevel,
const Cogs::ClipmapState clipmapState 
)
inline

Definition at line 38 of file ExtentCalculation.h.

◆ calculateLevelParameters()

void Cogs::calculateLevelParameters ( const ClipmapLevel terrainLevel,
const std::vector< const ClipmapLevel * > &  imageryLevels,
LevelParameters &  parameters,
ImageryParameters &  imageryParameters,
const Vector3d  center,
const bool   
)
inline

Definition at line 53 of file ClipmapParameterCalculation.h.

◆ calculateNextExtent()

void Cogs::calculateNextExtent ( double  longitude,
double  latitude,
const Cogs::ClipmapState clipmapState,
Cogs::ClipmapLevel firstTerrainLevel 
)
inline

Definition at line 20 of file ExtentCalculation.h.

◆ calculateViewPosInClippedLevel()

Vector2 Cogs::calculateViewPosInClippedLevel ( const ClipmapState clipmapState,
const ClipmapLevel terrainLevel 
)
inline

Definition at line 12 of file ClipmapParameterCalculation.h.

◆ clearClipmapTexture()

void Cogs::clearClipmapTexture ( IGraphicsDevice device,
RenderTexture texture 
)

Definition at line 762 of file ClipmapRenderer.cpp.

◆ compressTileData()

Cogs::TextureFormat Cogs::compressTileData ( std::vector< uint8_t > &  destination,
const uint8_t *  source,
TextureFormat  sourceFormat,
int  width,
int  height 
)

Definition at line 47 of file RasterConversion.cpp.

◆ convertBitmapData()

Cogs::TextureFormat Cogs::convertBitmapData ( const uint8_t *  data,
const TileData tileData,
std::vector< uint8_t > &  destination 
)

Definition at line 90 of file RasterConversion.cpp.

◆ copySubBuffer()

void Cogs::copySubBuffer ( GLenum  ,
GLuint  dstBuffer,
GLintptr  dstOffset,
GLenum  ,
GLuint  srcBuffer,
GLintptr  srcOffset,
GLsizeiptr  size 
)

Definition at line 74 of file ContextGL20.cpp.

◆ countLines()

size_t Cogs::countLines ( const StringView source,
size_t   
)

Definition at line 25 of file JsonParser.cpp.

◆ createClipmapTexture()

Cogs::RenderTexture Cogs::createClipmapTexture ( IGraphicsDevice device,
int  width,
int  height,
TextureFormat  textureFormat,
bool  mipmap = false,
glm::vec4  clearColor = glm::vec4(0) 
)

Definition at line 730 of file ClipmapRenderer.cpp.

◆ createDegenerateMesh()

Cogs::ClipmapMesh Cogs::createDegenerateMesh ( IBuffers buffers,
size_t  clipmapSegments,
size_t  clipmapPosts,
const VertexFormatHandle vertexFormat 
)

Definition at line 108 of file ClipmapGeometry.cpp.

◆ createMesh()

Cogs::ClipmapMesh Cogs::createMesh ( IBuffers buffers,
double  left,
double  bottom,
double  right,
double  top,
size_t  numberOfPartitionsX,
size_t  numberOfPartitionsY,
const VertexFormatHandle vertexFormat 
)

Definition at line 5 of file ClipmapGeometry.cpp.

◆ createSimpleMesh()

Cogs::ClipmapMesh Cogs::createSimpleMesh ( IBuffers buffers,
double  left,
double  bottom,
double  right,
double  top,
size_t  numberOfPartitionsX,
size_t  numberOfPartitionsY,
const VertexFormatHandle vertexFormat 
)

Definition at line 59 of file ClipmapGeometry.cpp.

◆ currentTime()

Cogs::Time Cogs::currentTime ( )

High resolution clock time (NTP / UTC time). Returns an implementation defined absolute timestamp, can be subtracted to get a time duration.

Definition at line 11 of file Timer.Emscripten.cpp.

◆ currentTimeReference()

Cogs::Time Cogs::currentTimeReference ( )

Definition at line 20 of file Timer.cpp.

◆ currentTimeToMicroseconds()

int64_t Cogs::currentTimeToMicroseconds ( Time  time)

Definition at line 31 of file Timer.Emscripten.cpp.

◆ currentTimeToMilliseconds()

int64_t Cogs::currentTimeToMilliseconds ( Time  time)

Definition at line 35 of file Timer.Emscripten.cpp.

◆ currentTimeToSeconds()

double Cogs::currentTimeToSeconds ( Time  time)

Definition at line 39 of file Timer.Emscripten.cpp.

◆ decode() [1/2]

uint8_t Cogs::decode ( int64_t  handle)
inline

Definition at line 371 of file EffectsCommon.h.

◆ decode() [2/2]

template<typename T , size_t Size>
void Cogs::decode ( int64_t  handle,
T(&)  slots[Size] 
)
inline

Definition at line 358 of file EffectsCommon.h.

◆ direct3D11ReturnCodeAsString()

const char * Cogs::direct3D11ReturnCodeAsString ( HRESULT  hr)

Definition at line 9 of file CommonD3D11.cpp.

◆ encode() [1/2]

uint64_t Cogs::encode ( uint8_t  csSlot)

Definition at line 300 of file EffectsCommon.cpp.

◆ encode() [2/2]

uint64_t Cogs::encode ( uint8_t  vsSlot,
uint8_t  hsSlot,
uint8_t  dsSlot,
uint8_t  gsSlot,
uint8_t  psSlot 
)

Definition at line 280 of file EffectsCommon.cpp.

◆ findLine()

StringView Cogs::findLine ( const StringView source,
size_t  offset,
int  direction 
)

Definition at line 64 of file JsonParser.cpp.

◆ findLineOffset()

const char * Cogs::findLineOffset ( const StringView source,
size_t  offset,
int  direction 
)

Definition at line 39 of file JsonParser.cpp.

◆ fnv1a() [1/2]

constexpr size_t Cogs::fnv1a ( const void *  bytes,
size_t  length,
size_t  hashValue = Details::FNV_offset_basis 
)
constexprnoexcept

Implementation of the FNV-1a algorithm for a block of memory.

See also
https://en.wikipedia.org/wiki/Fowler-Noll-Vo_hash_function
Parameters
bytesPointer to a sequence of bytes.
lengthThe number of bytes in the sequence.
hashValueInitial hash value to be used. This allows you to chain hash calls together.
Returns
A size_t containing the computed hash value.

Definition at line 53 of file HashFunctions.h.

References fnv1a().

◆ fnv1a() [2/2]

constexpr size_t Cogs::fnv1a ( uint8_t  data,
size_t  hashValue 
)
constexprnoexcept

Hashes a single byte using the fnv1a algorithm.

Definition at line 37 of file HashFunctions.h.

Referenced by fnv1a(), Cogs::Core::getMaterialHash(), hash(), and Cogs::Core::RenderPassOptions::updateHash().

◆ for_each_in_tuple()

template<typename... Ts, typename F >
void Cogs::for_each_in_tuple ( std::tuple< Ts... > &  t,
f 
)

Utility method for executing the given function over all members in a tuple.

Parameters
tTuple to iterate over.
fFunction or functor to execute for every member of t, with the member as a parameter to the function.

Definition at line 63 of file Tuple.h.

Referenced by Cogs::Core::ComponentSystemWithDataPools< ComponentType, DataTypes >::createComponent(), and Cogs::Core::ComponentSystemWithDataPools< ComponentType, DataTypes >::destroyComponent().

◆ get() [1/2]

template<class T , class... Types>
const T & Cogs::get ( const std::tuple< Types... > &  tuple)

Definition at line 32 of file Tuple.h.

◆ get() [2/2]

template<class T , class... Types>
T & Cogs::get ( std::tuple< Types... > &  tuple)

Definition at line 26 of file Tuple.h.

◆ getAccessModeString()

const char * Cogs::getAccessModeString ( uint32_t  accessMode)

Definition at line 60 of file CommonD3D11.cpp.

◆ getBindFlagsString()

const char * Cogs::getBindFlagsString ( uint32_t  bindFlags)

Definition at line 71 of file CommonD3D11.cpp.

◆ getBlockExtent()

TextureExtent COGSRENDERING_DLL_API Cogs::getBlockExtent ( TextureFormat  format)

Definition at line 37 of file TextureData.cpp.

◆ getBlockSize()

size_t COGSRENDERING_DLL_API Cogs::getBlockSize ( TextureFormat  format)

Definition at line 32 of file TextureData.cpp.

◆ getBufferSRVSlots()

template<typename Effect >
int64_t Cogs::getBufferSRVSlots ( Effect effect,
const StringView name 
)

Definition at line 354 of file EffectsCommon.cpp.

◆ getBufferUAVSlots()

template<typename Effect >
int64_t Cogs::getBufferUAVSlots ( Effect effect,
const StringView name 
)

Definition at line 342 of file EffectsCommon.cpp.

◆ getComponents()

size_t COGSRENDERING_DLL_API Cogs::getComponents ( TextureFormat  format)

Definition at line 42 of file TextureData.cpp.

◆ getCompressedFormat()

Cogs::TextureFormat Cogs::getCompressedFormat ( TextureFormat  format)

Definition at line 24 of file RasterConversion.cpp.

◆ getElementSemanticName()

Cogs::StringView Cogs::getElementSemanticName ( ElementSemantic  semantic)

Definition at line 106 of file VertexFormat.cpp.

◆ getField()

template<typename FieldType >
FieldType * Cogs::getField ( Cogs::Core::Context context,
EntityId  entityId,
const ComponentId  componentId,
const Cogs::Reflection::FieldId  fieldId 
)

Definition at line 76 of file FieldSetter.h.

◆ getFormatInfo()

const Cogs::FormatInfo * Cogs::getFormatInfo ( Format  format)

Definition at line 218 of file DataFormat.cpp.

◆ getFoundationVersionString()

const char * Cogs::getFoundationVersionString ( )

Definition at line 5 of file FoundationBase.cpp.

◆ getGLES3FuncPointers()

bool Cogs::getGLES3FuncPointers ( GLContextBase::Platform  platform)

Definition at line 329 of file GLFuncPointers.cpp.

◆ getGLFuncPointers()

bool Cogs::getGLFuncPointers ( )

Definition at line 501 of file GLFuncPointers.cpp.

◆ getHash() [1/2]

size_t COGSRENDERING_DLL_API Cogs::getHash ( const Cogs::VertexFormat vertexFormat)
inline

Definition at line 90 of file VertexFormat.h.

◆ getHash() [2/2]

size_t COGSRENDERING_DLL_API Cogs::getHash ( VertexFormatHandle  vertexFormatHandle)
inline

Definition at line 94 of file VertexFormat.h.

◆ getMipLevels()

uint32_t COGSRENDERING_DLL_API Cogs::getMipLevels ( const uint32_t  width,
const uint32_t  height 
)

Definition at line 47 of file TextureData.cpp.

◆ getMipSize()

uint32_t COGSRENDERING_DLL_API Cogs::getMipSize ( uint32_t  size,
uint32_t  level 
)

Definition at line 52 of file TextureData.cpp.

◆ getResourceDimensionsName()

COGSRENDERING_DLL_API const char * Cogs::getResourceDimensionsName ( ResourceDimensions  target)

Definition at line 9 of file TextureData.cpp.

◆ getSamplerSlots()

template<typename Effect >
int64_t Cogs::getSamplerSlots ( Effect effect,
const StringView name 
)

Definition at line 330 of file EffectsCommon.cpp.

◆ getSize() [1/2]

uint32_t COGSRENDERING_DLL_API Cogs::getSize ( const Cogs::VertexFormat vertexFormat)
inline

Definition at line 82 of file VertexFormat.h.

◆ getSize() [2/2]

uint32_t COGSRENDERING_DLL_API Cogs::getSize ( VertexFormatHandle  vertexFormatHandle)
inline

Definition at line 86 of file VertexFormat.h.

◆ getSlot()

template<typename Collection >
uint8_t Cogs::getSlot ( Collection &  collection,
const StringView name 
)

Definition at line 271 of file EffectsCommon.cpp.

◆ getSlots()

template<typename Effect >
uint64_t Cogs::getSlots ( Effect effect,
const StringView name 
)

Definition at line 306 of file EffectsCommon.cpp.

◆ getStorage()

VertexFormatStorage & Cogs::getStorage ( )

Definition at line 32 of file VertexFormat.cpp.

◆ getString() [1/6]

const char * Cogs::getString ( D3D11_BIND_FLAG  flags)

Definition at line 249 of file CommonD3D11.cpp.

◆ getString() [2/6]

const char * Cogs::getString ( D3D11_CPU_ACCESS_FLAG  flags)

Definition at line 238 of file CommonD3D11.cpp.

◆ getString() [3/6]

const char * Cogs::getString ( D3D11_TEXTURE2D_DESC  desc)

Definition at line 284 of file CommonD3D11.cpp.

◆ getString() [4/6]

const char * Cogs::getString ( D3D11_TEXTURE3D_DESC  desc)

Definition at line 300 of file CommonD3D11.cpp.

◆ getString() [5/6]

const char * Cogs::getString ( D3D11_USAGE  usage)

Definition at line 226 of file CommonD3D11.cpp.

◆ getString() [6/6]

const char * Cogs::getString ( DXGI_FORMAT  format)

Definition at line 101 of file CommonD3D11.cpp.

◆ getTextureSize()

size_t Cogs::getTextureSize ( int  width,
int  height,
TextureFormat  format 
)
inline

Definition at line 69 of file ClipmapTerrainTypes.h.

◆ getTextureSlots()

template<typename Effect >
int64_t Cogs::getTextureSlots ( Effect effect,
const StringView name 
)

Definition at line 318 of file EffectsCommon.cpp.

◆ getUsageString()

const char * Cogs::getUsageString ( Usage::EUsage  usage)

Definition at line 48 of file CommonD3D11.cpp.

◆ glBufferFakeAddress()

void * Cogs::glBufferFakeAddress ( unsigned  glName)
inline

Definition at line 10 of file Utilities.h.

◆ glTextureFakeAddress()

void * Cogs::glTextureFakeAddress ( unsigned  glName)
inline

Definition at line 9 of file Utilities.h.

◆ HandleIsValid() [1/2]

template<typename T >
bool Cogs::HandleIsValid ( const Handle_t< T >  handle)
inline

Definition at line 261 of file Common.h.

◆ HandleIsValid() [2/2]

template<typename T , typename U >
bool Cogs::HandleIsValid ( const Handle_t< T, U >  handle)
inline

Definition at line 267 of file Common.h.

◆ hash() [1/7]

constexpr size_t Cogs::hash ( )
constexprnoexcept

Simple getter function that returns the initial value for fnv1a hashing.

Definition at line 62 of file HashFunctions.h.

Referenced by Cogs::Core::EntityStore::addEntityDefinition(), Cogs::Core::MergeMaterialCommand::apply(), Cogs::Core::OGC3DTilesSystem::buildExplicitTree(), Cogs::Core::OGC3DTilesSystem::cleanupPendingSubtreeRequests(), Cogs::Core::EntityStore::createEntity(), Cogs::Core::ResourceManagerBase::destroy(), Cogs::Core::EntityStore::destroyEntity(), Cogs::EffectsGLES30::getConstantBufferBinding(), Cogs::EffectsWebGPU::getConstantBufferBinding(), Cogs::EffectsCommon::getEffectVariable(), Cogs::Core::EntityStore::getEntity(), Cogs::Core::EntityStore::getEntityDefinition(), Cogs::EffectsGL20::getSamplerStateBinding(), Cogs::EffectsGLES30::getSamplerStateBinding(), Cogs::Core::TextureManager::getTexture(), Cogs::EffectsGL20::getTextureBinding(), Cogs::EffectsGLES30::getTextureBinding(), Cogs::Core::ModelManager::handleLoad(), Cogs::StringView::hash(), hash(), Cogs::ComponentModel::Component::hash(), hashLowercase(), hashSequence(), Cogs::EffectsD3D11::loadComputeEffect(), Cogs::EffectsGL20::loadComputeEffect(), Cogs::Core::ResourceManagerBase::loadResourceInternal(), Cogs::Core::MeshStreamsLayout::logLayout(), Cogs::Core::OGC3DTilesSystem::makeCacheKey(), std::hash< Cogs::StringView >::operator()(), Cogs::Core::parseBool_(), Cogs::Logging::parseCategoryString(), Cogs::Core::EntityStore::renameEntity(), Cogs::ContextGL20::setSamplerState(), Cogs::Core::MaterialInstance::setTextureAddressMode(), Cogs::Core::MaterialInstance::setTextureFilterMode(), Cogs::Core::InstancedModelSystem::update(), and Cogs::Core::MeshStreamsLayout::updateHash().

◆ hash() [2/7]

constexpr size_t Cogs::hash ( const char *  str,
size_t  hashValue = hash() 
)
constexprnoexcept

Hash function for hashing Null terminated C character strings.

Definition at line 75 of file HashFunctions.h.

References fnv1a().

◆ hash() [3/7]

size_t Cogs::hash ( const Cogs::VertexFormat format,
size_t  hashValue = Cogs::hash() 
)
inline

Calculate a hash value for the given vertex format.

Definition at line 112 of file VertexFormat.h.

References Cogs::VertexFormat::elements, and hash().

◆ hash() [4/7]

size_t Cogs::hash ( const VertexElement element,
size_t  hashValue = Cogs::hash() 
)
inline

◆ hash() [5/7]

constexpr size_t Cogs::hash ( const void *  mem,
size_t  size,
size_t  hashValue = hash() 
)
constexprnoexcept

Hash a non-descript block of memory.

Definition at line 94 of file HashFunctions.h.

References fnv1a().

◆ hash() [6/7]

constexpr size_t Cogs::hash ( std::string_view  str,
size_t  hashValue = hash() 
)
constexprnoexcept

Generic hash function specialization for strings (std::string, std::string_view, Cogs::StringView).

Definition at line 100 of file HashFunctions.h.

References fnv1a().

◆ hash() [7/7]

template<typename T , typename std::enable_if< std::is_integral< T >::value||std::is_enum< T >::value||std::is_floating_point< T >::value, int >::type * = nullptr>
constexpr size_t Cogs::hash ( data,
size_t  hashValue = hash() 
)
constexprnoexcept

Hash function for integer and floating point types. (And enums.)

Definition at line 69 of file HashFunctions.h.

References fnv1a().

◆ hashLowercase()

size_t Cogs::hashLowercase ( std::string_view  str,
size_t  hashValue = Cogs::hash() 
)
noexcept

Get the hash code of the string converted to lowercase.

Lowercase is here defined as default "C" locale, i.e., A-Z is converted to a-z.

Returns
Hash code.

Definition at line 57 of file HashFunctions.cpp.

References hash().

Referenced by Cogs::StringView::hashLowercase(), and Cogs::Logging::parseCategoryString().

◆ hashSequence() [1/2]

template<typename T , typename U >
constexpr size_t Cogs::hashSequence ( const T &  t,
const U &  u 
)
constexpr

Hash the last two items in a sequence of objects.

Definition at line 8 of file HashSequence.h.

References hash().

Referenced by Cogs::Logging::ThrottledConsumer::consumeMessage(), hashSequence(), and Cogs::Core::Volumetric::OctSystem::update().

◆ hashSequence() [2/2]

template<typename T , typename U , typename... Args>
constexpr size_t Cogs::hashSequence ( const T &  t,
const U &  u,
Args...  args 
)
constexpr

Calculates a single hash value from a sequence of objects.

Definition at line 14 of file HashSequence.h.

References hash(), and hashSequence().

◆ initializeGeometry()

void Cogs::initializeGeometry ( ClipmapGeometry clipmapGeometry,
IBuffers buffers,
size_t  fillPatchPosts,
size_t  fillPatchSegments,
size_t  clipmapSegments,
size_t  clipmapPosts 
)

Definition at line 153 of file ClipmapGeometry.cpp.

◆ interpolateFn()

template<typename T >
T Cogs::interpolateFn ( const T &  s,
const T &  d,
float  t 
)
inline

Definition at line 13 of file Interpolator.h.

◆ interpolateFn< glm::quat >()

template<>
glm::quat Cogs::interpolateFn< glm::quat > ( const glm::quat &  s,
const glm::quat &  d,
float  t 
)
inline

Definition at line 17 of file Interpolator.h.

◆ isCompressible()

bool Cogs::isCompressible ( TextureFormat  format)

Definition at line 17 of file RasterConversion.cpp.

◆ isConvertible()

bool Cogs::isConvertible ( TextureFormat  format)

Definition at line 40 of file RasterConversion.cpp.

◆ isDebug()

bool Cogs::isDebug ( )
inline

Definition at line 272 of file Common.h.

◆ isPowerOfTwo()

template<typename T >
bool Cogs::isPowerOfTwo ( x)
inline

Returns true if x is a power of two.

Note
Zero is considered a power of two.

Definition at line 15 of file PowerOfTwo.h.

◆ loadAsset()

bool Cogs::loadAsset ( Cogs::Core::Context context,
const rapidjson::Document &  document,
Cogs::Core::AssetLoadFlags  flags,
ComponentModel::Entity root 
)

Definition at line 104 of file AssetReader.cpp.

◆ loadCallback()

void Cogs::loadCallback ( void *  userData,
int  level,
int  x,
int  y,
TileData dataPtr 
)

Definition at line 188 of file BridgeRasterSource.cpp.

◆ loadCallbackInternal()

void Cogs::loadCallbackInternal ( void *  userData,
int  ,
int  ,
int  ,
TileData dataPtr 
)

Definition at line 129 of file BridgeRasterSource.cpp.

◆ loadTileData()

void Cogs::loadTileData ( BridgeRasterSource source,
RasterTile tile,
const size_t  requestGeneration,
const size_t  rasterLevel,
const  size_t,
const uint8_t *  data,
int  width,
int  height,
TextureFormat  format,
bool  isHeight = false,
float  minZ = 0,
float  maxZ = 0 
)

Definition at line 33 of file BridgeRasterSource.cpp.

◆ make2CCBE()

constexpr uint32_t Cogs::make2CCBE ( uint8_t  a,
uint8_t  b 
)
constexpr

Definition at line 76 of file FoundationBase.h.

◆ make2CCLE()

constexpr uint32_t Cogs::make2CCLE ( uint8_t  a,
uint8_t  b 
)
constexpr

Definition at line 72 of file FoundationBase.h.

◆ make4CCBE()

constexpr uint32_t Cogs::make4CCBE ( uint8_t  a,
uint8_t  b,
uint8_t  c,
uint8_t  d 
)
constexpr

Definition at line 84 of file FoundationBase.h.

◆ make4CCLE()

constexpr uint32_t Cogs::make4CCLE ( uint8_t  a,
uint8_t  b,
uint8_t  c,
uint8_t  d 
)
constexpr

Definition at line 80 of file FoundationBase.h.

◆ makePointer()

template<typename T , typename DeleterFunction >
Pointer< T > Cogs::makePointer ( T *  t,
DeleterFunction  deleterFunc 
)

Construct a Pointer<T> instance from the given pointer and deleter function.

Allows simple template type deduction for the T parameter.

Template Parameters
TType of the pointer given.
DeleterFunctionType of deleter to associate with the pointer.
Parameters
tPointer to store.
deleterFuncDeleter function instance.
Returns
A initialized Pointer<T> instance.

Definition at line 172 of file Pointer.h.

◆ memberOffset()

template<typename ClassType , typename FieldType >
size_t Cogs::memberOffset ( FieldType ClassType::*  ptr)
inline

Find the offset of a pointer to member in a class or struct.

The offset is found by constructing a member pointer inside an instance of the type at memory address zero. The pointers address can then be directly converted to a byte offset from the start of the instance.

Definition at line 67 of file FoundationBase.h.

Referenced by Cogs::ComponentModel::Component::getFieldId(), and Cogs::Reflection::Type::getFieldId().

◆ mortonCode() [1/2]

constexpr uint32_t Cogs::mortonCode ( uint16_t  a,
uint16_t  b 
)
constexpr

Interleave bits of 2 values.

Definition at line 32 of file MortonCode.h.

◆ mortonCode() [2/2]

constexpr uint64_t Cogs::mortonCode ( uint16_t  i,
uint16_t  j,
uint16_t  k 
)
constexpr

Interleave bits of 3 values to form the 3-way Morton code.

Definition at line 10 of file MortonCode.h.

◆ murmur2()

size_t Cogs::murmur2 ( const void *  bytes,
const size_t  length 
)
noexcept

Implementation of the MurmurHash2 algorithm.

See also
http://en.wikipedia.org/wiki/MurmurHash
Parameters
bytesPointer to a sequence of bytes.
lengthLength of the sequence of bytes to operate on.
Returns
A size_t containing the computed hash value.

Definition at line 4 of file HashFunctions.cpp.

◆ operator<()

bool Cogs::operator< ( const StringView left,
const StringView right 
)
inlinenoexcept

Lexicographically compare two string views.

Definition at line 319 of file StringView.h.

◆ operator<<()

std::ostream & Cogs::operator<< ( std::ostream &  stream,
const Cogs::StringView stringView 
)
inline

Stream operator out provided to make it possible to insert Cogs::StringView into streams.

Parameters
streamStream object to output to.
stringViewStringView instance to output.
Returns
A reference to the given stream. Allows chaining of output.

Definition at line 17 of file StdString.h.

◆ operator<=()

bool Cogs::operator<= ( const StringView left,
const StringView right 
)
inlinenoexcept

Lexicographically compare two string views.

Definition at line 335 of file StringView.h.

◆ operator==() [1/4]

bool Cogs::operator== ( const char *  left,
const StringView right 
)
inlinenoexcept

Char ptr equality operator.

Definition at line 351 of file StringView.h.

◆ operator==() [2/4]

bool Cogs::operator== ( const std::string &  left,
const StringView right 
)
inlinenoexcept

std::string equality operator.

Definition at line 367 of file StringView.h.

◆ operator==() [3/4]

bool Cogs::operator== ( const std::string_view &  left,
const StringView right 
)
inlinenoexcept

std::string_view equality operator.

Definition at line 375 of file StringView.h.

◆ operator==() [4/4]

bool Cogs::operator== ( const StringView left,
const char *  right 
)
inlinenoexcept

Char ptr equality operator.

Definition at line 359 of file StringView.h.

◆ operator>()

bool Cogs::operator> ( const StringView left,
const StringView right 
)
inlinenoexcept

Lexicographically compare two string views.

Definition at line 327 of file StringView.h.

◆ operator>=()

bool Cogs::operator>= ( const StringView left,
const StringView right 
)
inlinenoexcept

Lexicographically compare two string views.

Definition at line 343 of file StringView.h.

◆ parseDataFormat()

Cogs::DataFormat Cogs::parseDataFormat ( const StringView format)

Definition at line 223 of file DataFormat.cpp.

◆ perfTime()

Cogs::TimePerf Cogs::perfTime ( )

High resolution performance timer. Returns an implementation defined absolute timestamp, can be subtracted to get a time duration.

Definition at line 6 of file Timer.Emscripten.cpp.

◆ perfTimeReference()

Cogs::TimePerf Cogs::perfTimeReference ( )

Functions that provide a reference time point at the start of the application startup. Useful for application uptime or converting absolute timestamps to a narrow value range.

Definition at line 16 of file Timer.cpp.

◆ perfTimeToMicroseconds()

int64_t Cogs::perfTimeToMicroseconds ( TimePerf  time)

Convertion functions for timestamps.

Definition at line 18 of file Timer.Emscripten.cpp.

◆ perfTimeToMilliseconds()

int64_t Cogs::perfTimeToMilliseconds ( TimePerf  time)

Definition at line 22 of file Timer.Emscripten.cpp.

◆ perfTimeToSeconds()

double Cogs::perfTimeToSeconds ( TimePerf  time)

Definition at line 26 of file Timer.Emscripten.cpp.

◆ RegisterGPUResource()

void Cogs::RegisterGPUResource ( void *  handle,
size_t  size,
MemBlockType  type,
const OsoMPAttribute *  attributes = nullptr,
uint32_t  noOfAttributes = 0 
)

Definition at line 26 of file Utilities.cpp.

◆ RegisterGPUResourceAttributes()

void Cogs::RegisterGPUResourceAttributes ( void *  handle,
const OsoMPAttribute *  attributes,
uint32_t  noOfAttributes 
)

Definition at line 44 of file Utilities.cpp.

◆ releaseClipmapTexture()

void Cogs::releaseClipmapTexture ( IGraphicsDevice device,
RenderTexture texture 
)

Definition at line 753 of file ClipmapRenderer.cpp.

◆ releaseGeometry()

void Cogs::releaseGeometry ( ClipmapGeometry clipmapGeometry,
IBuffers buffers 
)

Definition at line 193 of file ClipmapGeometry.cpp.

◆ releaseMesh()

void Cogs::releaseMesh ( ClipmapMesh mesh,
IBuffers buffers 
)

Definition at line 187 of file ClipmapGeometry.cpp.

◆ roundDownToPowerOfTwo()

uint16_t Cogs::roundDownToPowerOfTwo ( uint16_t  x)
inline

Definition at line 84 of file PowerOfTwo.h.

◆ roundUpToPowerOfTwo() [1/4]

uint16_t Cogs::roundUpToPowerOfTwo ( uint16_t  x)
inline

Round a number up to the next number of two, or return itself if the number already is a power of two.

Note
Zero is considered a power of two.

Definition at line 58 of file PowerOfTwo.h.

◆ roundUpToPowerOfTwo() [2/4]

uint32_t Cogs::roundUpToPowerOfTwo ( uint32_t  x)
inline

Round a number up to the next number of two, or return itself if the number already is a power of two.

Note
Zero is considered a power of two.

Definition at line 111 of file PowerOfTwo.h.

◆ roundUpToPowerOfTwo() [3/4]

uint64_t Cogs::roundUpToPowerOfTwo ( uint64_t  x)
inline

Round a number up to the next number of two, or return itself if the number already is a power of two.

Note
Zero is considered a power of two.

Definition at line 140 of file PowerOfTwo.h.

◆ roundUpToPowerOfTwo() [4/4]

uint8_t Cogs::roundUpToPowerOfTwo ( uint8_t  x)
inline

Round a number up to the next number of two, or return itself if the number already is a power of two.

Note
Zero is considered a power of two.

Definition at line 28 of file PowerOfTwo.h.

Referenced by roundUpToPowerOfTwoShift().

◆ roundUpToPowerOfTwoShift() [1/4]

uint16_t Cogs::roundUpToPowerOfTwoShift ( uint16_t  x)
inline

Rounds x up to the next number of two if it is not already a number of two and returns the number of shifts this number is.

Note
Zero is considered a power of two.

Definition at line 197 of file PowerOfTwo.h.

References roundUpToPowerOfTwo().

◆ roundUpToPowerOfTwoShift() [2/4]

uint32_t Cogs::roundUpToPowerOfTwoShift ( uint32_t  x)
inline

Rounds x up to the next number of two if it is not already a number of two and returns the number of shifts this number is.

Note
Zero is considered a power of two.

Definition at line 224 of file PowerOfTwo.h.

References roundUpToPowerOfTwo().

◆ roundUpToPowerOfTwoShift() [3/4]

uint64_t Cogs::roundUpToPowerOfTwoShift ( uint64_t  x)
inline

Rounds x up to the next number of two if it is not already a number of two and returns the number of shifts this number is.

Note
Zero is considered a power of two.

Definition at line 252 of file PowerOfTwo.h.

References roundUpToPowerOfTwo().

◆ roundUpToPowerOfTwoShift() [4/4]

uint8_t Cogs::roundUpToPowerOfTwoShift ( uint8_t  x)
inline

Rounds x up to the next number of two if it is not already a number of two and returns the number of shifts this number is.

Note
Zero is considered a power of two.

Definition at line 170 of file PowerOfTwo.h.

References roundUpToPowerOfTwo().

Referenced by Cogs::Collections::FixedIndexQueue< Element, IndexBaseType >::shrink().

◆ setChanged()

void Cogs::setChanged ( Cogs::Core::Context context,
Cogs::ComponentModel::Component component,
Reflection::FieldId  fieldId 
)
inline

◆ setField()

template<typename FieldType >
void Cogs::setField ( Cogs::Core::Context context,
EntityId  entityId,
const ComponentId  componentId,
const Cogs::Reflection::FieldId  fieldId,
FieldType &&  data 
)

Definition at line 88 of file FieldSetter.h.

◆ setImageLayout() [1/2]

bool Cogs::setImageLayout ( VkCommandBuffer  commandBuffer,
TextureVK texture,
VkImageAspectFlags  aspectMask,
VkImageLayout  newLayout,
VkImageSubresourceRange  range = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1 } 
)

Definition at line 207 of file CommonVK.cpp.

◆ setImageLayout() [2/2]

bool Cogs::setImageLayout ( VkCommandBuffer  commandBuffer,
VkImage  image,
VkImageAspectFlags  aspectMask,
VkImageLayout  oldLayout,
VkImageLayout  newLayout,
VkImageSubresourceRange  range = { VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1 } 
)

Definition at line 160 of file CommonVK.cpp.

◆ setResourceBarrier()

void Cogs::setResourceBarrier ( ID3D12GraphicsCommandList *  commandList,
ID3D12Resource *  resource,
D3D12_RESOURCE_STATES  stateBefore,
D3D12_RESOURCE_STATES  stateAfter 
)
inline

Definition at line 37 of file CommonD3D12.h.

◆ setResourceState()

void Cogs::setResourceState ( ID3D12GraphicsCommandList *  commandList,
ResourceD3D12 resource,
D3D12_RESOURCE_STATES  stateAfter 
)
inline

Definition at line 50 of file CommonD3D12.h.

◆ setUpGLDebugging()

bool Cogs::setUpGLDebugging ( const char *  contextName,
GLContextBase::Platform  platform 
)

Definition at line 151 of file GLContext.cpp.

◆ setVectorField()

template<typename FieldType >
void Cogs::setVectorField ( Cogs::Core::Context context,
EntityId  entityId,
const ComponentId  componentId,
const Cogs::Reflection::FieldId  fieldId,
FieldType &&  data,
size_t  index 
)

Definition at line 107 of file FieldSetter.h.

◆ stbAlloc()

void * Cogs::stbAlloc ( size_t  size,
void *  userData = nullptr 
)

Definition at line 6 of file StbAllocator.cpp.

◆ stbFree()

void Cogs::stbFree ( void *  ptr,
void *  userData = nullptr 
)

Definition at line 21 of file StbAllocator.cpp.

◆ stbRealloc()

void * Cogs::stbRealloc ( void *  ptr,
size_t  oldSize,
size_t  newSize 
)

Definition at line 10 of file StbAllocator.cpp.

◆ stringConcatenate()

COGSFOUNDATION_API std::string Cogs::stringConcatenate ( std::initializer_list< std::string_view >  strList)

Definition at line 6 of file StringUtilities.cpp.

◆ stringEndsWith()

bool Cogs::stringEndsWith ( std::string_view  str,
std::string_view  ending 
)
inline

Definition at line 38 of file StdString.h.

◆ stringJoin()

COGSFOUNDATION_API std::string Cogs::stringJoin ( std::string_view  separator,
std::initializer_list< std::string_view >  strList 
)

Definition at line 22 of file StringUtilities.cpp.

◆ stringReplaceAll()

std::string & Cogs::stringReplaceAll ( std::string &  str,
std::string_view  from,
std::string_view  to 
)
inline

Definition at line 24 of file StdString.h.

◆ stringStartsWith()

bool Cogs::stringStartsWith ( std::string_view  str,
std::string_view  beginning 
)
inline

Definition at line 34 of file StdString.h.

◆ stringToLower()

std::string Cogs::stringToLower ( std::string_view  input)
inline

Definition at line 48 of file StdString.h.

◆ stringToUpper()

std::string Cogs::stringToUpper ( std::string_view  input)
inline

Definition at line 59 of file StdString.h.

◆ UnregisterGPUResource()

void Cogs::UnregisterGPUResource ( void *  handle)

Definition at line 59 of file Utilities.cpp.

◆ updateImageryExtent()

void Cogs::updateImageryExtent ( Cogs::ClipmapLevel imageryLevel,
const Cogs::ClipmapLevel terrainLevel 
)
inline

Definition at line 9 of file ExtentCalculation.h.

◆ updateOrigin()

TextureOrigin Cogs::updateOrigin ( const Extent currentExtent,
const Extent nextExtent,
const int  width,
const int  height,
const TextureOrigin origin 
)

Definition at line 943 of file ClipmapManager.cpp.

Variable Documentation

◆ activeSources

std::unordered_map<int64_t, RasterSourcePtr> Cogs::activeSources

Definition at line 24 of file Terrain.cpp.

◆ formatMap

TextureFormat Cogs::formatMap[]

Definition at line 7 of file GliFormats.h.

◆ InvalidAttributeLocationGL20

const unsigned char Cogs::InvalidAttributeLocationGL20 = 0xFF

Definition at line 13 of file AttributesGL20.h.

◆ kMaxRenderTargets

const size_t Cogs::kMaxRenderTargets = 8

Definition at line 69 of file RenderTargetsD3D12.h.

◆ kMaxRenderTargets11

const size_t Cogs::kMaxRenderTargets11 = 8

Definition at line 12 of file RenderTargetsD3D11.h.

◆ kMaxVertexInputSlots

const int Cogs::kMaxVertexInputSlots = 32

Definition at line 12 of file ContextCommon.h.

◆ logger

constexpr Cogs::Logging::Log Cogs::logger = Cogs::Logging::getLogger("FileSystemWatcher")
constexpr

Definition at line 15 of file FileSystemWatcher.Windows.cpp.

◆ MaxVertexAttributesGL20

const size_t Cogs::MaxVertexAttributesGL20 = NumAttributeSemanticsGL20 * NumAttributeSemanticSlotsGL20

Definition at line 12 of file AttributesGL20.h.

◆ NumAttributeSemanticsGL20

const size_t Cogs::NumAttributeSemanticsGL20 = 7

Definition at line 10 of file AttributesGL20.h.

◆ NumAttributeSemanticSlotsGL20

const size_t Cogs::NumAttributeSemanticSlotsGL20 = 8

Definition at line 11 of file AttributesGL20.h.

◆ TextureFormatsWebGPU

const WGPUTextureFormat Cogs::TextureFormatsWebGPU
extern

Definition at line 5 of file FormatsWebGPU.cpp.

◆ VertexFormatsWebGPU

const WGPUVertexFormat Cogs::VertexFormatsWebGPU
extern

Definition at line 211 of file FormatsWebGPU.cpp.