Cogs.Core
|
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< RasterSource > | ReadLock |
typedef std::lock_guard< RasterSource > | WriteLock |
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 RasterizerState > | RasterizerStateHandle |
typedef Handle_t< struct DepthStencilState > | DepthStencilStateHandle |
typedef Handle_t< struct BlendState > | BlendStateHandle |
typedef Handle_t< InputLayoutTag > | InputLayoutHandle |
typedef Handle_t< BufferTag > | BufferHandle |
typedef Handle_t< BufferTag, BufferHandle > | VertexBufferHandle |
typedef Handle_t< BufferTag, BufferHandle > | IndexBufferHandle |
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< PreprocessorDefinition > | PreprocessorDefinitions |
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 ¤tExtent, 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 ¶meters, 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 ¶meters, 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 > | |
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 FormatInfo * | getFormatInfo (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) |
VertexFormatStorage & | getStorage () |
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 [] |
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.
using Cogs::Atomic = typedef std::atomic<T> |
typedef Handle_t<struct BlendState> Cogs::BlendStateHandle |
typedef Geometry::BoundingBox Cogs::BoundingBox |
Definition at line 35 of file ClipmapTerrainTypes.h.
typedef Handle_t<BufferBindingTag> Cogs::BufferBindingHandle |
typedef Handle_t<BufferTag> Cogs::BufferHandle |
typedef TerrainQueryData<unsigned char> Cogs::ColorQueryData |
Definition at line 39 of file ClipmapQueryHandler.h.
using Cogs::ComponentIndex = typedef uint32_t |
Type used to track component indexes in pools.
Definition at line 16 of file Component.h.
typedef Handle_t<ComputePipelineTag> Cogs::ComputePipelineHandle |
typedef Handle_t<ConstantBufferBindingTag> Cogs::ConstantBufferBindingHandle |
using Cogs::DataFormat = typedef Format |
Definition at line 245 of file DataFormat.h.
typedef Handle_t<DepthStencilTag> Cogs::DepthStencilHandle |
typedef Handle_t<struct DepthStencilState> Cogs::DepthStencilStateHandle |
typedef Handle_t<EffectTag> Cogs::EffectHandle |
typedef Handle_t<VariableBindingTag> Cogs::EffectVariableHandle |
typedef TerrainQueryData<double> Cogs::ElevationQueryData |
Definition at line 38 of file ClipmapQueryHandler.h.
typedef Handle_t<FenceTag> Cogs::FenceHandle |
using Cogs::Future = typedef std::future<T> |
typedef Handle_t<BufferTag, BufferHandle> Cogs::IndexBufferHandle |
typedef Handle_t<InputLayoutTag> Cogs::InputLayoutHandle |
typedef glm::mat4 Cogs::mat4 |
Definition at line 41 of file ClipmapTerrainTypes.h.
typedef glm::mat4 Cogs::Matrix |
Definition at line 32 of file ClipmapTerrainTypes.h.
typedef Geometry::Plane Cogs::Plane |
Definition at line 34 of file ClipmapTerrainTypes.h.
using Cogs::PointerId = typedef size_t |
Definition at line 9 of file Gestures.h.
typedef std::pair<std::string, std::string> Cogs::PreprocessorDefinition |
Preprocessor definition.
Definition at line 10 of file IEffects.h.
typedef std::vector<PreprocessorDefinition> Cogs::PreprocessorDefinitions |
A set of preprocessor definitions.
Definition at line 13 of file IEffects.h.
typedef Handle_t<struct RasterizerState> Cogs::RasterizerStateHandle |
using Cogs::RasterSourcePtr = typedef std::shared_ptr<RasterSource> |
Definition at line 10 of file RasterSourceSubscription.h.
typedef std::lock_guard<RasterSource> Cogs::ReadLock |
Definition at line 39 of file RasterSource.h.
typedef Handle_t<RenderPipelineTag> Cogs::RenderPipelineHandle |
typedef Handle_t<RenderTargetTag> Cogs::RenderTargetHandle |
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.
using Cogs::SafeResourceMap = typedef ResourceMapBase<HandleType, ResourceType, PoolStoragePolicy<HandleType, ResourceType>, MutexLockingPolicy, DefaultVerificationPolicy> |
Definition at line 183 of file ResourceMap.h.
typedef Handle_t<SamplerStateBindingTag> Cogs::SamplerStateBindingHandle |
using Cogs::SamplerStateD3D11 = typedef ResourcePointer<ID3D11SamplerState> |
Definition at line 34 of file TexturesD3D11.h.
typedef Handle_t<SamplerTag> Cogs::SamplerStateHandle |
typedef Handle_t<ShaderTag> Cogs::ShaderHandle |
using Cogs::SizeType = typedef ComponentIndex |
Type used to track the size of pools.
Definition at line 19 of file Component.h.
typedef void Cogs::TerrainQueryCallback(TerrainQueryResults *results) |
Definition at line 174 of file CogsTerrainBase.h.
typedef Handle_t<TextureBindingTag> Cogs::TextureBindingHandle |
using Cogs::TextureFormat = typedef Format |
Definition at line 246 of file DataFormat.h.
typedef Handle_t<TextureTag> Cogs::TextureHandle |
typedef Handle_t<TextureViewTag> Cogs::TextureViewHandle |
typedef glm::vec2 Cogs::vec2 |
Definition at line 37 of file ClipmapTerrainTypes.h.
typedef glm::vec3 Cogs::vec3 |
Definition at line 38 of file ClipmapTerrainTypes.h.
typedef glm::vec4 Cogs::vec4 |
Definition at line 39 of file ClipmapTerrainTypes.h.
typedef glm::vec2 Cogs::Vector2 |
Definition at line 23 of file ClipmapTerrainTypes.h.
typedef glm::dvec2 Cogs::Vector2d |
Definition at line 24 of file ClipmapTerrainTypes.h.
typedef glm::vec3 Cogs::Vector3 |
Definition at line 26 of file ClipmapTerrainTypes.h.
typedef glm::dvec3 Cogs::Vector3d |
Definition at line 27 of file ClipmapTerrainTypes.h.
typedef glm::vec4 Cogs::Vector4 |
Definition at line 29 of file ClipmapTerrainTypes.h.
typedef glm::dvec4 Cogs::Vector4d |
Definition at line 30 of file ClipmapTerrainTypes.h.
typedef Handle_t<VertexArrayObjectTag> Cogs::VertexArrayObjectHandle |
typedef Handle_t<BufferTag, BufferHandle> Cogs::VertexBufferHandle |
typedef Handle_t<VertexFormatTag> Cogs::VertexFormatHandle |
typedef std::lock_guard<RasterSource> Cogs::WriteLock |
Definition at line 40 of file RasterSource.h.
|
strong |
|
strong |
Type of contents in effect description.
Enumerator | |
---|---|
File | File names. |
Source | Shader source. |
Definition at line 43 of file IEffects.h.
|
strong |
Element semantics used to map data to the shader stage.
Definition at line 13 of file VertexFormat.h.
|
strong |
Definition at line 11 of file FileContents.h.
|
strong |
Definition at line 21 of file DataFormat.h.
|
strong |
Definition at line 9 of file DataFormat.h.
enum Cogs::GraphicsDeviceFlags : int |
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
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.
|
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. |
|
strong |
Input types for the input assembler.
Enumerator | |
---|---|
VertexData | Per vertex data. |
InstanceData | Per instance data. |
Definition at line 28 of file VertexFormat.h.
|
strong |
Definition at line 10 of file Keyboard.h.
|
strong |
Definition at line 12 of file IContext.h.
|
strong |
Definition at line 11 of file Gestures.h.
|
strong |
Definition at line 15 of file TextureData.h.
|
strong |
Definition at line 18 of file IContext.h.
enum Cogs::WebGPUConstantBufferType |
Definition at line 18 of file EffectsWebGPU.h.
enum Cogs::WebGPUConstantBufferUsage |
Definition at line 10 of file EffectsWebGPU.h.
void Cogs::applyParameters | ( | IContext * | context, |
const Parameters & | parameters, | ||
BufferHandle | bufferHandle | ||
) |
Definition at line 250 of file ClipmapRenderer.cpp.
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().
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.
|
inline |
Definition at line 148 of file ClipmapParameterCalculation.h.
|
inline |
Definition at line 38 of file ExtentCalculation.h.
|
inline |
Definition at line 53 of file ClipmapParameterCalculation.h.
|
inline |
Definition at line 20 of file ExtentCalculation.h.
|
inline |
Definition at line 12 of file ClipmapParameterCalculation.h.
void Cogs::clearClipmapTexture | ( | IGraphicsDevice * | device, |
RenderTexture & | texture | ||
) |
Definition at line 762 of file ClipmapRenderer.cpp.
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.
Cogs::TextureFormat Cogs::convertBitmapData | ( | const uint8_t * | data, |
const TileData * | tileData, | ||
std::vector< uint8_t > & | destination | ||
) |
Definition at line 90 of file RasterConversion.cpp.
void Cogs::copySubBuffer | ( | GLenum | , |
GLuint | dstBuffer, | ||
GLintptr | dstOffset, | ||
GLenum | , | ||
GLuint | srcBuffer, | ||
GLintptr | srcOffset, | ||
GLsizeiptr | size | ||
) |
Definition at line 74 of file ContextGL20.cpp.
size_t Cogs::countLines | ( | const StringView & | source, |
size_t | |||
) |
Definition at line 25 of file JsonParser.cpp.
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.
Cogs::ClipmapMesh Cogs::createDegenerateMesh | ( | IBuffers * | buffers, |
size_t | clipmapSegments, | ||
size_t | clipmapPosts, | ||
const VertexFormatHandle & | vertexFormat | ||
) |
Definition at line 108 of file ClipmapGeometry.cpp.
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.
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.
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.
int64_t Cogs::currentTimeToMicroseconds | ( | Time | time | ) |
Definition at line 31 of file Timer.Emscripten.cpp.
int64_t Cogs::currentTimeToMilliseconds | ( | Time | time | ) |
Definition at line 35 of file Timer.Emscripten.cpp.
double Cogs::currentTimeToSeconds | ( | Time | time | ) |
Definition at line 39 of file Timer.Emscripten.cpp.
|
inline |
Definition at line 371 of file EffectsCommon.h.
|
inline |
Definition at line 358 of file EffectsCommon.h.
const char * Cogs::direct3D11ReturnCodeAsString | ( | HRESULT | hr | ) |
Definition at line 9 of file CommonD3D11.cpp.
uint64_t Cogs::encode | ( | uint8_t | csSlot | ) |
Definition at line 300 of file EffectsCommon.cpp.
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.
StringView Cogs::findLine | ( | const StringView & | source, |
size_t | offset, | ||
int | direction | ||
) |
Definition at line 64 of file JsonParser.cpp.
const char * Cogs::findLineOffset | ( | const StringView & | source, |
size_t | offset, | ||
int | direction | ||
) |
Definition at line 39 of file JsonParser.cpp.
|
constexprnoexcept |
Implementation of the FNV-1a algorithm for a block of memory.
bytes | Pointer to a sequence of bytes. |
length | The number of bytes in the sequence. |
hashValue | Initial hash value to be used. This allows you to chain hash calls together. |
Definition at line 53 of file HashFunctions.h.
References fnv1a().
|
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().
void Cogs::for_each_in_tuple | ( | std::tuple< Ts... > & | t, |
F | f | ||
) |
Utility method for executing the given function over all members in a tuple.
t | Tuple to iterate over. |
f | Function 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().
const T & Cogs::get | ( | const std::tuple< Types... > & | tuple | ) |
T & Cogs::get | ( | std::tuple< Types... > & | tuple | ) |
const char * Cogs::getAccessModeString | ( | uint32_t | accessMode | ) |
Definition at line 60 of file CommonD3D11.cpp.
const char * Cogs::getBindFlagsString | ( | uint32_t | bindFlags | ) |
Definition at line 71 of file CommonD3D11.cpp.
TextureExtent COGSRENDERING_DLL_API Cogs::getBlockExtent | ( | TextureFormat | format | ) |
Definition at line 37 of file TextureData.cpp.
size_t COGSRENDERING_DLL_API Cogs::getBlockSize | ( | TextureFormat | format | ) |
Definition at line 32 of file TextureData.cpp.
int64_t Cogs::getBufferSRVSlots | ( | Effect & | effect, |
const StringView & | name | ||
) |
Definition at line 354 of file EffectsCommon.cpp.
int64_t Cogs::getBufferUAVSlots | ( | Effect & | effect, |
const StringView & | name | ||
) |
Definition at line 342 of file EffectsCommon.cpp.
size_t COGSRENDERING_DLL_API Cogs::getComponents | ( | TextureFormat | format | ) |
Definition at line 42 of file TextureData.cpp.
Cogs::TextureFormat Cogs::getCompressedFormat | ( | TextureFormat | format | ) |
Definition at line 24 of file RasterConversion.cpp.
Cogs::StringView Cogs::getElementSemanticName | ( | ElementSemantic | semantic | ) |
Definition at line 106 of file VertexFormat.cpp.
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.
const Cogs::FormatInfo * Cogs::getFormatInfo | ( | Format | format | ) |
Definition at line 218 of file DataFormat.cpp.
const char * Cogs::getFoundationVersionString | ( | ) |
Definition at line 5 of file FoundationBase.cpp.
bool Cogs::getGLES3FuncPointers | ( | GLContextBase::Platform | platform | ) |
Definition at line 329 of file GLFuncPointers.cpp.
bool Cogs::getGLFuncPointers | ( | ) |
Definition at line 501 of file GLFuncPointers.cpp.
|
inline |
Definition at line 90 of file VertexFormat.h.
|
inline |
Definition at line 94 of file VertexFormat.h.
uint32_t COGSRENDERING_DLL_API Cogs::getMipLevels | ( | const uint32_t | width, |
const uint32_t | height | ||
) |
Definition at line 47 of file TextureData.cpp.
uint32_t COGSRENDERING_DLL_API Cogs::getMipSize | ( | uint32_t | size, |
uint32_t | level | ||
) |
Definition at line 52 of file TextureData.cpp.
COGSRENDERING_DLL_API const char * Cogs::getResourceDimensionsName | ( | ResourceDimensions | target | ) |
Definition at line 9 of file TextureData.cpp.
int64_t Cogs::getSamplerSlots | ( | Effect & | effect, |
const StringView & | name | ||
) |
Definition at line 330 of file EffectsCommon.cpp.
|
inline |
Definition at line 82 of file VertexFormat.h.
|
inline |
Definition at line 86 of file VertexFormat.h.
uint8_t Cogs::getSlot | ( | Collection & | collection, |
const StringView & | name | ||
) |
Definition at line 271 of file EffectsCommon.cpp.
uint64_t Cogs::getSlots | ( | Effect & | effect, |
const StringView & | name | ||
) |
Definition at line 306 of file EffectsCommon.cpp.
VertexFormatStorage & Cogs::getStorage | ( | ) |
Definition at line 32 of file VertexFormat.cpp.
const char * Cogs::getString | ( | D3D11_BIND_FLAG | flags | ) |
Definition at line 249 of file CommonD3D11.cpp.
const char * Cogs::getString | ( | D3D11_CPU_ACCESS_FLAG | flags | ) |
Definition at line 238 of file CommonD3D11.cpp.
const char * Cogs::getString | ( | D3D11_TEXTURE2D_DESC | desc | ) |
Definition at line 284 of file CommonD3D11.cpp.
const char * Cogs::getString | ( | D3D11_TEXTURE3D_DESC | desc | ) |
Definition at line 300 of file CommonD3D11.cpp.
const char * Cogs::getString | ( | D3D11_USAGE | usage | ) |
Definition at line 226 of file CommonD3D11.cpp.
const char * Cogs::getString | ( | DXGI_FORMAT | format | ) |
Definition at line 101 of file CommonD3D11.cpp.
|
inline |
Definition at line 69 of file ClipmapTerrainTypes.h.
int64_t Cogs::getTextureSlots | ( | Effect & | effect, |
const StringView & | name | ||
) |
Definition at line 318 of file EffectsCommon.cpp.
const char * Cogs::getUsageString | ( | Usage::EUsage | usage | ) |
Definition at line 48 of file CommonD3D11.cpp.
|
inline |
Definition at line 10 of file Utilities.h.
|
inline |
Definition at line 9 of file Utilities.h.
|
inline |
|
inline |
|
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().
|
constexprnoexcept |
Hash function for hashing Null terminated C character strings.
Definition at line 75 of file HashFunctions.h.
References fnv1a().
|
inline |
Calculate a hash value for the given vertex format.
Definition at line 112 of file VertexFormat.h.
References Cogs::VertexFormat::elements, and hash().
|
inline |
Calculate a hash value for the specified vertex element.
Definition at line 100 of file VertexFormat.h.
References Cogs::VertexElement::format, hash(), Cogs::VertexElement::inputType, Cogs::VertexElement::instanceStep, Cogs::VertexElement::offset, Cogs::VertexElement::semantic, and Cogs::VertexElement::semanticIndex.
|
constexprnoexcept |
Hash a non-descript block of memory.
Definition at line 94 of file HashFunctions.h.
References fnv1a().
|
constexprnoexcept |
Generic hash function specialization for strings (std::string, std::string_view, Cogs::StringView).
Definition at line 100 of file HashFunctions.h.
References fnv1a().
|
constexprnoexcept |
Hash function for integer and floating point types. (And enums.)
Definition at line 69 of file HashFunctions.h.
References fnv1a().
|
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.
Definition at line 57 of file HashFunctions.cpp.
References hash().
Referenced by Cogs::StringView::hashLowercase(), and Cogs::Logging::parseCategoryString().
|
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().
|
constexpr |
Calculates a single hash value from a sequence of objects.
Definition at line 14 of file HashSequence.h.
References hash(), and hashSequence().
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.
|
inline |
Definition at line 13 of file Interpolator.h.
|
inline |
Definition at line 17 of file Interpolator.h.
bool Cogs::isCompressible | ( | TextureFormat | format | ) |
Definition at line 17 of file RasterConversion.cpp.
bool Cogs::isConvertible | ( | TextureFormat | format | ) |
Definition at line 40 of file RasterConversion.cpp.
|
inline |
Returns true if x is a power of two.
Definition at line 15 of file PowerOfTwo.h.
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.
void Cogs::loadCallback | ( | void * | userData, |
int | level, | ||
int | x, | ||
int | y, | ||
TileData * | dataPtr | ||
) |
Definition at line 188 of file BridgeRasterSource.cpp.
void Cogs::loadCallbackInternal | ( | void * | userData, |
int | , | ||
int | , | ||
int | , | ||
TileData * | dataPtr | ||
) |
Definition at line 129 of file BridgeRasterSource.cpp.
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.
|
constexpr |
Definition at line 76 of file FoundationBase.h.
|
constexpr |
Definition at line 72 of file FoundationBase.h.
|
constexpr |
Definition at line 84 of file FoundationBase.h.
|
constexpr |
Definition at line 80 of file FoundationBase.h.
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.
T | Type of the pointer given. |
DeleterFunction | Type of deleter to associate with the pointer. |
t | Pointer to store. |
deleterFunc | Deleter function instance. |
|
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().
|
constexpr |
Interleave bits of 2 values.
Definition at line 32 of file MortonCode.h.
|
constexpr |
Interleave bits of 3 values to form the 3-way Morton code.
Definition at line 10 of file MortonCode.h.
|
noexcept |
Implementation of the MurmurHash2 algorithm.
bytes | Pointer to a sequence of bytes. |
length | Length of the sequence of bytes to operate on. |
Definition at line 4 of file HashFunctions.cpp.
|
inlinenoexcept |
Lexicographically compare two string views.
Definition at line 319 of file StringView.h.
|
inline |
Stream operator out provided to make it possible to insert Cogs::StringView into streams.
stream | Stream object to output to. |
stringView | StringView instance to output. |
Definition at line 17 of file StdString.h.
|
inlinenoexcept |
Lexicographically compare two string views.
Definition at line 335 of file StringView.h.
|
inlinenoexcept |
Char ptr equality operator.
Definition at line 351 of file StringView.h.
|
inlinenoexcept |
std::string equality operator.
Definition at line 367 of file StringView.h.
|
inlinenoexcept |
std::string_view equality operator.
Definition at line 375 of file StringView.h.
|
inlinenoexcept |
Char ptr equality operator.
Definition at line 359 of file StringView.h.
|
inlinenoexcept |
Lexicographically compare two string views.
Definition at line 327 of file StringView.h.
|
inlinenoexcept |
Lexicographically compare two string views.
Definition at line 343 of file StringView.h.
Cogs::DataFormat Cogs::parseDataFormat | ( | const StringView & | format | ) |
Definition at line 223 of file DataFormat.cpp.
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.
Cogs::TimePerf Cogs::perfTimeReference | ( | ) |
int64_t Cogs::perfTimeToMicroseconds | ( | TimePerf | time | ) |
Convertion functions for timestamps.
Definition at line 18 of file Timer.Emscripten.cpp.
int64_t Cogs::perfTimeToMilliseconds | ( | TimePerf | time | ) |
Definition at line 22 of file Timer.Emscripten.cpp.
double Cogs::perfTimeToSeconds | ( | TimePerf | time | ) |
Definition at line 26 of file Timer.Emscripten.cpp.
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.
void Cogs::RegisterGPUResourceAttributes | ( | void * | handle, |
const OsoMPAttribute * | attributes, | ||
uint32_t | noOfAttributes | ||
) |
Definition at line 44 of file Utilities.cpp.
void Cogs::releaseClipmapTexture | ( | IGraphicsDevice * | device, |
RenderTexture & | texture | ||
) |
Definition at line 753 of file ClipmapRenderer.cpp.
void Cogs::releaseGeometry | ( | ClipmapGeometry & | clipmapGeometry, |
IBuffers * | buffers | ||
) |
Definition at line 193 of file ClipmapGeometry.cpp.
void Cogs::releaseMesh | ( | ClipmapMesh & | mesh, |
IBuffers * | buffers | ||
) |
Definition at line 187 of file ClipmapGeometry.cpp.
|
inline |
Definition at line 84 of file PowerOfTwo.h.
|
inline |
Round a number up to the next number of two, or return itself if the number already is a power of two.
Definition at line 58 of file PowerOfTwo.h.
|
inline |
Round a number up to the next number of two, or return itself if the number already is a power of two.
Definition at line 111 of file PowerOfTwo.h.
|
inline |
Round a number up to the next number of two, or return itself if the number already is a power of two.
Definition at line 140 of file PowerOfTwo.h.
|
inline |
Round a number up to the next number of two, or return itself if the number already is a power of two.
Definition at line 28 of file PowerOfTwo.h.
Referenced by roundUpToPowerOfTwoShift().
|
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.
Definition at line 197 of file PowerOfTwo.h.
References roundUpToPowerOfTwo().
|
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.
Definition at line 224 of file PowerOfTwo.h.
References roundUpToPowerOfTwo().
|
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.
Definition at line 252 of file PowerOfTwo.h.
References roundUpToPowerOfTwo().
|
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.
Definition at line 170 of file PowerOfTwo.h.
References roundUpToPowerOfTwo().
Referenced by Cogs::Collections::FixedIndexQueue< Element, IndexBaseType >::shrink().
|
inline |
Must be Called after changing a Component field. Mark field changed. Request engine update.
Definition at line 25 of file FieldSetter.h.
References Cogs::ComponentModel::ComponentFlags::DisableTracking, Cogs::Core::Context::engine, Cogs::ComponentModel::Component::isSet(), and Cogs::ComponentModel::Component::setFieldChanged().
Referenced by assignField(), Cogs::Core::BufferResource::clear(), Cogs::Core::MaterialInstance::clone(), Cogs::Core::MeshComponent::getMesh(), Cogs::Core::BufferResource::invalidate(), Cogs::Core::BufferResource::setBindFlags(), Cogs::Core::Mesh::setMeshFlag(), Cogs::Core::Material::setProperty(), Cogs::Core::MaterialInstance::setProperty(), Cogs::Core::Material::setTextureAddressMode(), Cogs::Core::Material::setTextureFilterMode(), Cogs::Core::MaterialInstance::setTextureFilterMode(), Cogs::Core::Material::setTextureProperty(), and Cogs::Core::Text3DSystem::update().
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.
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.
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.
|
inline |
Definition at line 37 of file CommonD3D12.h.
|
inline |
Definition at line 50 of file CommonD3D12.h.
bool Cogs::setUpGLDebugging | ( | const char * | contextName, |
GLContextBase::Platform | platform | ||
) |
Definition at line 151 of file GLContext.cpp.
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.
void * Cogs::stbAlloc | ( | size_t | size, |
void * | userData = nullptr |
||
) |
Definition at line 6 of file StbAllocator.cpp.
void Cogs::stbFree | ( | void * | ptr, |
void * | userData = nullptr |
||
) |
Definition at line 21 of file StbAllocator.cpp.
void * Cogs::stbRealloc | ( | void * | ptr, |
size_t | oldSize, | ||
size_t | newSize | ||
) |
Definition at line 10 of file StbAllocator.cpp.
COGSFOUNDATION_API std::string Cogs::stringConcatenate | ( | std::initializer_list< std::string_view > | strList | ) |
Definition at line 6 of file StringUtilities.cpp.
|
inline |
Definition at line 38 of file StdString.h.
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.
|
inline |
Definition at line 24 of file StdString.h.
|
inline |
Definition at line 34 of file StdString.h.
|
inline |
Definition at line 48 of file StdString.h.
|
inline |
Definition at line 59 of file StdString.h.
void Cogs::UnregisterGPUResource | ( | void * | handle | ) |
Definition at line 59 of file Utilities.cpp.
|
inline |
Definition at line 9 of file ExtentCalculation.h.
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.
std::unordered_map<int64_t, RasterSourcePtr> Cogs::activeSources |
Definition at line 24 of file Terrain.cpp.
TextureFormat Cogs::formatMap[] |
Definition at line 7 of file GliFormats.h.
const unsigned char Cogs::InvalidAttributeLocationGL20 = 0xFF |
Definition at line 13 of file AttributesGL20.h.
const size_t Cogs::kMaxRenderTargets = 8 |
Definition at line 69 of file RenderTargetsD3D12.h.
const size_t Cogs::kMaxRenderTargets11 = 8 |
Definition at line 12 of file RenderTargetsD3D11.h.
const int Cogs::kMaxVertexInputSlots = 32 |
Definition at line 12 of file ContextCommon.h.
|
constexpr |
Definition at line 15 of file FileSystemWatcher.Windows.cpp.
const size_t Cogs::MaxVertexAttributesGL20 = NumAttributeSemanticsGL20 * NumAttributeSemanticSlotsGL20 |
Definition at line 12 of file AttributesGL20.h.
const size_t Cogs::NumAttributeSemanticsGL20 = 7 |
Definition at line 10 of file AttributesGL20.h.
const size_t Cogs::NumAttributeSemanticSlotsGL20 = 8 |
Definition at line 11 of file AttributesGL20.h.
|
extern |
Definition at line 5 of file FormatsWebGPU.cpp.
|
extern |
Definition at line 211 of file FormatsWebGPU.cpp.