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

Contains the Engine, Renderer, resource managers and other systems needed to run Cogs.Core. More...

Namespaces

namespace  GltfLoader
 
namespace  MarchingCubes
 Various tables for driving the Marching Cubes algorithm.
 

Classes

struct  AboutCommand
 
struct  AbstractLiveUpdateCommand
 
struct  ActiveLights
 Active lights settings. More...
 
class  AdaptivePlanarGridComponent
 
struct  AdaptivePlanarGridData
 
struct  AdaptivePlanarGridIndex
 
struct  AdaptivePlanarGridMaterialData
 
struct  AdaptivePlanarGridQuadTreeNode
 
struct  AdaptivePlanarGridRefinableNode
 
class  AdaptivePlanarGridSystem
 
struct  AdaptivePlanarGridTile
 
struct  AddComponentCommand
 
struct  Animation
 
struct  AnimationBuffer
 
struct  AnimationCache
 
struct  AnimationClip
 
struct  AnimationComponent
 Component handling animation of multiple Poses of an Animation Resource. More...
 
struct  AnimationData
 
struct  AnimationLoadInfo
 
class  AnimationManager
 
class  AnimationSystem
 
struct  AnimationTrack
 
class  AnnotationAxisComponent
 
class  AnnotationAxisSystem
 
struct  Archive
 
struct  Asset
 
class  AssetBounds
 
struct  AssetComponent
 Instantiates an asset model into the scene. More...
 
class  AssetData
 
struct  AssetDefinition
 
struct  AssetGpuStats
 
struct  AssetInstanceData
 
struct  AssetInstanceFrameStats
 
struct  AssetInstanceStats
 
struct  AssetLoadInfo
 
struct  AssetLodReference
 
class  AssetManager
 
struct  AssetModelRequest
 
struct  AssetPipeCommand
 
struct  AssetStatsCommand
 
class  AssetSystem
 
struct  AssetSystemData
 
struct  AssetUpdate
 
struct  AttributeDefinition
 
struct  AudioComponent
 
struct  AudioData
 
struct  AudioDevice
 
struct  AudioExtension
 
struct  AudioListenerComponent
 
class  AudioSystem
 
struct  AxisCubeComponent
 A cube with grids on the side faces. More...
 
struct  BasicBlueNoiseLoadInfo
 
class  BasicBlueNoiseManager
 
class  BasicOceanComponent
 
struct  BasicOceanData
 
class  BasicOceanSystem
 
class  BasicTerrainComponent
 
struct  Batch
 
struct  BatchCommand
 
struct  BatchSourceDestination
 Pair of source/destination paths. Doing recursive processing adds directories to the destination. More...
 
class  BillboardComponent
 Renders a square billboard oriented towards the screen, positioned by the transform given by the TransformComponent. More...
 
class  BillboardSystem
 The billboard system calculates data for billboard components found in the scene. More...
 
struct  BillboardVertex
 
struct  BlueNoise
 
struct  BlueNoiseExtension
 
struct  BlueNoiseLoadInfo
 
class  BlueNoiseManager
 
struct  Bone
 
class  Bounds
 Utility class for bounds calculation of Scene / Entity. More...
 
struct  BoundsRenderer
 
class  BoxCollisionComponent
 
class  BoxCollisionSystem
 
struct  BoxParameters
 
struct  BufferBindFlags
 Buffer binding flags. More...
 
struct  BufferFlags
 Buffer state flags. More...
 
class  BufferManager
 
struct  BufferResource
 Buffer resource. More...
 
struct  BufferView
 BufferView provides a typed, reference-counted, span of an underlying buffer resource. More...
 
struct  CachedEffect
 
class  CameraArrayComponent
 Multi-view: Render a set of related views into array texture layers. More...
 
struct  CameraArrayData
 
class  CameraArraySystem
 
class  CameraComponent
 Defines a camera. More...
 
struct  CameraData
 Contains data describing a Camera instance and its derived data structured such as matrix data and view frustum. More...
 
class  CameraSystem
 The camera system computes CameraData for every CameraDataComponent in the engine. More...
 
class  CapsuleCollisionComponent
 
class  CapsuleCollisionSystem
 
struct  CaptureComponent
 
struct  CaptureData
 
struct  CaptureItem
 
class  CaptureSystem
 
struct  CasingExtension
 
struct  ChangeEditingModeCommand
 
class  CinematicCameraComponent
 
struct  CinematicCameraData
 Contains Interpolators that will update the camera position and rotation based on component data. More...
 
class  CinematicCameraSystem
 The cinematic camera system calculates interpolation data for cinematic components found in the scene. More...
 
class  ClearResourceTask
 
struct  ClipShapeCache
 
class  ClipShapeComponent
 Sets up a clipping shape that can be used by multiple entities. More...
 
struct  ClipShapeData
 
class  ClipShapeRefComponent
 Component that attaches a ClipShape to an entity. More...
 
class  ClipShapeRefSystem
 
class  ClipShapeSystem
 
struct  CogsModelLoader
 
class  CollisionComponent
 
struct  CollisionData
 
struct  CollisionDetail
 
struct  CollisionInfo
 
class  CollisionSystem
 
struct  CompiledExpression
 
class  ComplexArray
 
class  ComponentSystem
 Typed component system managing a pool of components with the given ComponentType. More...
 
class  ComponentSystemBase
 Base class for component systems. More...
 
class  ComponentSystemWithDataPool
 Component system with parallel data per component stored in a pool similar to how the components themselves are stored. More...
 
class  ComponentSystemWithDataPools
 Component system template with multiple parallel structures per component stored in separate pools similar to how the components themselves are stored. More...
 
struct  ComputeTask
 
struct  ConstantBufferDefinition
 
struct  ConstantBuffers
 
struct  ConstantBufferVariableDefinition
 
class  ConstraintComponent
 
struct  ConstraintData
 
class  ConstraintSystem
 
class  Context
 A Context instance contains all the services, systems and runtime components needed to use Cogs. More...
 
class  ContextBase
 Context base contains the parts of a Context that may be instantiated by static scene or model instances. More...
 
class  CopyResourceTask
 
class  CoreAllocator
 
struct  CreateEntityCommand
 
struct  CubeMarkerComponent
 
struct  CubeMarkerData
 
class  CubeMarkerSystem
 
struct  CullingData
 
class  CullingManager
 
struct  CullingSource
 
class  CurvedEarthPositionComponent
 
class  CylinderCollisionComponent
 
class  CylinderCollisionSystem
 
class  DataFetcherBase
 
struct  DataSet2DComponent
 
struct  DataSetComponent
 
struct  DataStream
 Contains a stream of data used by Mesh resources. More...
 
struct  DebugGeometryRenderer
 
struct  DefaultMaterial
 Default material. More...
 
struct  DeferredLightingTask
 
class  DeferredNameResolution
 
class  DepthAxisComponent
 
struct  DepthAxisData
 
class  DepthAxisSystem
 
struct  DepthBias
 Defines data for controlling the depth output when rasterizing geometry. More...
 
struct  DestroyCommand
 
class  DimeLoader
 
struct  DimeLoaderExtension
 
class  DPIService
 
class  DracoMeshDecompressor
 
struct  DrawContext
 
struct  DrillingExtension
 
struct  DumpStatsCommand
 
class  DynamicComponent
 Base class for components implementing dynamic behavior. More...
 
class  DynamicComponentSystem
 The dynamic component system handles instances of components derived from DynamicComponent. More...
 
class  Editor
 
struct  EditorCommand
 Base class for Cogs Editor commands. More...
 
struct  EditorExtension
 
struct  EditorRenderExtension
 
class  EditorRenderTask
 WireFrame Rendering task for Selected entity outline and extra cameras. More...
 
struct  EditorState
 
struct  Effect
 Effect resources contain data to control the shader stages of the GPU pipeline. More...
 
struct  EffectBinding
 
struct  EffectBindings
 
struct  EffectCache
 
struct  EffectDefinition
 Defines a loadable effect. More...
 
struct  EffectDescription
 
struct  EffectLoadInfo
 Load information for Effect resources. More...
 
class  EffectManager
 Effect manager responsible for loading, processing and activating Effect resources. More...
 
class  EmptyCollisionComponent
 
class  EmptyCollisionSystem
 
class  Engine
 The engine owns all the systems and resource managers, and is responsible for executing different stages of updates in the correct order. More...
 
struct  EngineBuffers
 
struct  EngineData
 
struct  EnginePermutation
 
struct  EnginePermutationDefinition
 
struct  EnginePermutations
 
struct  EngineSystems
 
struct  EntityCreationContext
 
struct  EntityData
 Holds extra housekeeping data for an Entity instance. More...
 
struct  EntityDefinition
 Defines how to construct entities of a certain type by a list of components to instantiate and default values to apply to fields in these components. More...
 
struct  EntityInstanceData
 
struct  EntityInstanceFlags
 
class  EntityStore
 Stores top level entities for the engine. More...
 
struct  EnvironmentComponent
 
struct  EnvironmentData
 
class  EnvironmentSystem
 
class  EventBasedInput
 Event based input handler. More...
 
class  ExportCommand
 
class  ExportGltfCommand
 
struct  Expression
 Defines a string expression, to be parsed and evaluated by an expression context. More...
 
class  ExpressionComponent
 
struct  ExpressionContext
 Provides a context for evaluation of expressions. More...
 
struct  ExpressionValue
 
struct  ExpressionValueInit
 
struct  ExpressionVariable
 Defines a single named expression variable. More...
 
struct  Extension
 Defines an extension to Cogs.Core and provides methods to override in order to initialize extension code. More...
 
struct  ExtensionCommand
 
struct  ExtensionItem
 
class  ExtensionRegistry
 Extension registry used to host and manage extension instances. More...
 
class  ExtensionSystems
 Contains extension systems accessible by key. More...
 
struct  ExtrusionComponent
 
struct  ExtrusionData
 
struct  ExtrusionLogData
 
class  ExtrusionSystem
 
class  Features
 
struct  FieldInfo
 
struct  FieldValue
 Defines a value to apply to a field. More...
 
struct  FilterListTask
 
class  FixedConstraintComponent
 
class  FixedConstraintSystem
 
class  FogComponent
 Contains data to describe fog. More...
 
struct  FogData
 Holds calculated data for a single fog instance. More...
 
class  FogSystem
 The fog system manages fog instances, in addition to special handling a single fog component as the global fog instance. More...
 
class  FollowComponent
 
struct  Font
 Font resources are used to render text with a specific font and size. More...
 
struct  FontDefinition
 Defines a Font. More...
 
struct  FontLoadInfo
 Defines information used to load a Font resource. More...
 
class  FontManager
 Font manager responsible for loading, processing and lifetime of Font resources. More...
 
class  FontSelectorComponent
 Creates fontHandle from Font+Size passing handle to other components having the 'fontHandle' field. More...
 
class  FPSNavigationComponent
 
struct  Gamepad
 
struct  GenerateListTask
 
struct  GenerateNormalsCommand
 
struct  GenerateTangentsCommand
 
class  GenericConstraintComponent
 
class  GenericConstraintSystem
 
struct  GenNormalsCommand
 
struct  GhostAction
 
class  GhostComponent
 
struct  GhostContact
 
struct  GhostData
 
class  GhostSystem
 
struct  GliTextureLoader
 
struct  GliTextureLoaderExtension
 
struct  GlobalBinding
 
struct  GltfLoaderExtension
 
struct  GroupCommand
 
struct  GuiComponent
 
struct  GuiContainer
 
struct  GuiData
 
struct  GuiDocument
 
struct  GuiExtension
 
struct  GuiFont
 
struct  GuiFontRegistry
 
struct  GuiLoadInfo
 
class  GuiManager
 
struct  GuiRenderComponent
 
class  GuiRenderSystem
 
struct  GuiRenderTask
 
class  GuiSystem
 
struct  H264ParseData
 
struct  H265NALheader
 
struct  H265ParseData
 
struct  H265PicParameterSet
 
struct  H265ProfileTierLevel
 
struct  H265SeqParameterSet
 
struct  H265VideoParameterSet
 
struct  H265VuiParameters
 
struct  HeightMapComponent
 
struct  HeightMapData
 
class  HeightMapSystem
 
class  HingeConstraintComponent
 
class  HingeConstraintSystem
 
struct  HrdParameters
 
class  IAsyncResourceLoader
 
class  IBlueNoiseManager
 
class  ICommandState
 
struct  IconInfo
 
class  IEditor
 
class  IGetBounds
 
class  IInputDevice
 
class  IInputProvider
 
class  ILoadedResourceLoader
 
class  ILoadedResourceViewLoader
 
struct  Image360Component
 
struct  Image360Data
 
struct  Image360Extension
 
struct  Image360System
 
struct  ImageCache
 
struct  ImageDefinition
 
class  ImguiRenderer
 
struct  InputDeviceIdentifier
 Identifier for an input device. More...
 
struct  InputDevices
 
struct  InputDeviceState
 
struct  InputEvent
 Event input queue event. Contains either a keyboard or mouse event. Keyboard event: More...
 
struct  InputIdentifier
 Identifier for an input device axis. More...
 
struct  InputKeyEvent
 Event based input data for Keyboard events. More...
 
class  InputManager
 Input manager responsible for handling input from various devices, including mouse, keyboard, game controllers etc. More...
 
struct  InputUserData
 
class  InspectorGuiRenderer
 
struct  InstanceData
 
struct  InstancedMeshPicker
 
class  InstancedMeshRenderBounds
 Implement custom bounds calculation. More...
 
class  InstancedMeshRenderComponent
 Renders a mesh using instancing. More...
 
struct  InstancedMeshRenderData
 
class  InstancedMeshRenderSystem
 Instanced mesh render system. More...
 
struct  InstancedModelComponent
 Instanced model rendering component. More...
 
struct  InstancedModelData
 
class  InstancedModelSystem
 
struct  IOHandler
 
class  IRayPickable
 Interface for modules implementing custom picking. More...
 
class  IRenderer
 Renderer interface used by the engine to control registered renderer instances. More...
 
class  IRendererExtension
 Defines an extension to the renderer, capable of doing custom rendering. More...
 
class  IRenderResources
 Interface to the render resources. More...
 
class  IResourceLoader
 
class  IResourceManager
 Defines common resource manager interface shared by resource managers for all types of resources. More...
 
class  IValueTypeManager
 
class  IVideoDecoder
 
struct  IVideoDecoderContext
 
struct  IVideoEncoder
 
struct  IVideoEncoderContext
 
class  JsonMemoryBufferStream
 
struct  LastPickState
 Shows information about last picking. More...
 
struct  LightBuffer
 
struct  LightCascadeFrustaPoints
 
class  LightComponent
 Defines a single light source and its behavior. More...
 
struct  LightData
 Defines calculated light data. More...
 
class  LightSystem
 Holds all LightComponent instances in the system. More...
 
struct  List
 
struct  ListNode
 
struct  ListObjectBuffer
 
struct  LoadRvmCommand
 
struct  LocalBounds
 
struct  LocalTransform
 Defines local transform data. More...
 
class  LodComponent
 Contains data describing level of detail behavior for the entity the component belongs to. More...
 
struct  LodData
 Defines level of detail data calculated by the LodSystem. More...
 
struct  LodInstanceData
 
class  LodSystem
 The LodSystem is responsible for calculating common basic level of detail data for all entities with LodComponents attached to them. More...
 
struct  LoftedCrossSectionsComponent
 
struct  LoftedCrossSectionsData
 
class  LoftedCrossSectionsSystem
 
struct  MappedStream
 Wrapper for mapped stream data automatically updating the Mesh resource mapped from when destructed. More...
 
struct  MappedStreamReadOnly
 Wrapper for read-only access to mapped stream data. More...
 
class  MappedTexture
 Wrapper for mapped texture data, ensuring RAII behavior of stream map/unmap operations. More...
 
class  MarkerPointSetComponent
 ! Generate a set of points for the given position array. More...
 
struct  MarkerPointSetData
 
struct  MarkerPointSetPicker
 
class  MarkerPointSetSystem
 
struct  Material
 Material resources define the how of geometry rendering (the what is defined by Mesh and Texture resources). More...
 
struct  MaterialComponent
 Exposes material properties for legacy entities and code. More...
 
struct  MaterialData
 
struct  MaterialDefinition
 
struct  MaterialDefinitionBase
 
class  MaterialDefinitionManager
 
class  MaterialEditor
 
struct  MaterialFlags
 Defines material flags controlling the behavior of Materials when rendering. More...
 
struct  MaterialInstance
 Material instances represent a specialized Material combined with state for all its buffers and properties. More...
 
class  MaterialInstanceManager
 Material instance manager handles creation, processing and lifetime for MaterialInstance resources. More...
 
struct  MaterialLoadInfo
 Defines loading information for Material resources. More...
 
class  MaterialManager
 Material manager handling loading and processing of Material resources. More...
 
struct  MaterialOptions
 Defines options for rendering using a material instance. More...
 
struct  MaterialProperties
 
struct  MaterialProperty
 Defines a single material property. More...
 
struct  MaterialPropertyBuffer
 Material property buffers contain properties for a material, such as color, reflectiveness or other values, packed into a buffer for easy data management in the renderer. More...
 
struct  MaterialPropertyBufferInstance
 Material property buffer instances are created from MaterialPropertyBuffers, and have the same set of properties and layout as the buffer. More...
 
struct  MaterialPropertyDescriptor
 Contains location/size information for a property. More...
 
class  MaterialSystem
 Updates material components. More...
 
struct  MaterialTextureDefinition
 
struct  MemoryContext
 
struct  MemoryContextStorage
 
struct  Menu
 
struct  MenuItem
 
struct  MergeCommand
 
struct  MergeInstance
 
struct  MergeMaterialCommand
 
struct  MergeMeshCommand
 
struct  MergeMeshState
 
struct  Mesh
 Meshes contain streams of vertex data in addition to index data and options defining geometry used for rendering and picking. More...
 
class  MeshCollisionComponent
 
class  MeshCollisionSystem
 
class  MeshComponent
 Contains a handle to a Mesh resource to use when rendering using the MeshRenderComponent. More...
 
struct  MeshFlags
 Defines mesh flags controlling the behavior of Mesh resources. More...
 
class  MeshGenerator
 
struct  MeshGeneratorComponent
 Generates mesh data and assigns the generated mesh to a MeshComponent on the same entity. More...
 
struct  MeshGeneratorData
 
class  MeshGeneratorSystem
 
struct  MeshItem
 
struct  MeshItems
 
class  MeshManager
 Mesh manager handling the creation, processing and lifetime of Mesh resources. More...
 
struct  MeshManagerData
 
class  MeshoptDecompressor
 
class  MeshRayPickableBase
 Base class for picking meshes. More...
 
class  MeshRenderComponent
 Renders the contents of a MeshComponent using the given materials. More...
 
struct  MeshRenderData
 
struct  MeshRenderPicker
 
struct  MeshRep
 
struct  MeshStreamsLayout
 
class  MeshSystem
 
struct  MessageDispatcher
 
struct  MipLevelsTask
 
struct  ModalEditorCommand
 Abstract base class for all editor commands showing GUI in interactive mode. More...
 
struct  Model
 Model resources define a template for a set of connected entities, with resources such as meshes, materials and textures defined. More...
 
struct  ModelComponent
 Contains a model reference to instance as children to the entity the ModelComponent belongs to. More...
 
class  ModelData
 
struct  ModelFileData
 
struct  ModelInstanceData
 
struct  ModelLoadInfo
 
class  ModelManager
 Model manager responsible for loading, processing and lifetime for Model resources. More...
 
struct  ModelManagerData
 
struct  ModelPart
 
struct  ModelStats
 
class  ModelSystem
 
struct  MotionComponent
 Contains motion data. More...
 
struct  MPEGAdaptationField
 
struct  MPEGNetworkInformationTable
 
struct  MPEGProgramAssociationSection
 
struct  MPEGProgramMapEntity
 
struct  MPEGProgramMapTable
 
struct  MPEGTransportStreamData
 
struct  MPEGTransportStreamEncoder
 
struct  MPEGTransportStreamHeader
 
class  MultiphaseFlowComponent
 
struct  MultiphaseFlowExtension
 
struct  NALheader
 
class  NearLimitComponent
 Contains data to describe fog. More...
 
class  NoiseSampler
 
struct  NoOpModalCommand
 
struct  NormalGenArgs
 
struct  ObjectBuffer
 
class  OceanBounds
 
struct  OceanComponent
 
struct  OceanData
 
class  OceanPicker
 
class  OceanSystem
 
class  OGC3DTilesBounds
 
struct  OGC3DTilesComponent
 
struct  OGC3DTilesData
 
struct  OGC3DTilesDataHolder
 
struct  OGC3DTilesExtension
 
class  OGC3DTilesSystem
 
class  OrbitingCameraController
 Component that calculates position and orientation of the entity TransformComponent. More...
 
class  OverlayComponent
 Overlay component. More...
 
class  OverlaySystem
 The overlay system handles OverlayComponent instances. More...
 
struct  PackMeshCommand
 
struct  ParsedOption
 
struct  ParsedValue
 Stores the parsed output of a key/value pair. More...
 
struct  PartialPreprocessor
 Partial C preprocessor. More...
 
struct  PasteEntityCommand
 
struct  PES_Sinc
 
struct  PhysicsExtension
 
class  PhysicsManager
 
class  PickingBeamComponent
 
struct  PicParameterSet
 
struct  PipelineInstance
 
struct  PipelineRun
 
class  PipelineService
 
class  PlaneCollisionComponent
 
class  PlaneCollisionSystem
 
struct  PointParameters
 
struct  Pos4hNorm10Tex2f
 
struct  Pos4hNorm8Tex2f
 
struct  PoseData
 
struct  PositionColorVertex
 
struct  PositionNormalColorVertex
 
struct  PositionNormalTexVertex
 
struct  PositionNormalVertex
 
struct  PositionVertex
 
struct  PostCommand
 Abstract base class for all editor batch Post commands. More...
 
struct  PostProcessTask
 
class  PotreeBounds
 
struct  PotreeCell
 
struct  PotreeComponent
 Component for Point Cloud Display. More...
 
struct  PotreeData
 
struct  PotreeDataHolder
 
struct  PotreeDecodeInData
 
struct  PotreeDecodeOutData
 
struct  PotreeExtension
 
struct  PotreeNodeHeapItem
 
struct  PotreePicker
 
struct  PotreeRenderer
 
struct  PotreeSubtree
 
struct  PotreeSystem
 
struct  PotreeVertexLayoutInfo
 
struct  ProceduralSkyComponent
 
struct  ProceduralSkyExtension
 
struct  ProcessTask
 
struct  ProcessTaskProperty
 
struct  PropertiesComponent
 
class  PropertiesSystem
 
struct  PropertyInfo
 
struct  PropertyRange
 
struct  PropertyStore
 
struct  QuadBounds
 
struct  QuadNode
 
class  QualityService
 
struct  QueueState
 Reports current state of a queue. More...
 
struct  QueueWorkerState
 reports current state of a queue worker. More...
 
struct  QueueWorkerStateData
 Tracks kernel launches by a worker thread as they happen. More...
 
struct  RadialLogComponent
 
class  Random
 
struct  RayIntersectionHit
 
class  RayPicking
 
class  ReadbackTask
 
struct  ReaderContext
 
struct  ReaderExtension
 
class  ReflectionComponent
 
struct  RegisteredService
 Registered service structure. More...
 
struct  RemapMaterialCommand
 
struct  RenderBatch
 
struct  RenderBuffer
 
class  RenderComponent
 Base component for all rendering content. More...
 
struct  RenderEffect
 
class  Renderer
 Core renderer system. More...
 
struct  Renderers
 
struct  RenderingEvent
 Defines rendering events. More...
 
struct  RenderItem
 
struct  RenderList
 
struct  RenderListTask
 
struct  RenderMaterial
 
struct  RenderMaterialInstance
 
struct  RenderMesh
 
struct  RenderPass
 
struct  RenderPassOptions
 
struct  RenderPipeline
 
struct  RenderPipelineDefinition
 
class  RenderPipelineManager
 
struct  RenderResource
 
struct  RenderResourceBase
 Render resources represent Engine resources like Mesh, Effect or MaterialInstance, in the renderer. More...
 
struct  RenderResourceDefinition
 
class  RenderResources
 Contains render resources used by the renderer. More...
 
struct  RenderResourceStorage
 
struct  RenderSettings
 Render settings variables. More...
 
struct  RenderStates
 
class  RenderSystem
 The mesh render system handles MeshRenderComponents. More...
 
struct  RenderTarget
 
struct  RenderTask
 
struct  RenderTaskContext
 
struct  RenderTaskDefinition
 
struct  RenderTaskFlags
 
struct  RenderTaskParameters
 
struct  RenderTaskResource
 
struct  RenderTaskResources
 
struct  RenderTaskSlot
 
struct  RenderTexture
 
class  ResolveResourceTask
 
struct  Resource
 
class  ResourceArchive
 Represents a resource archive used to load resources at runtime. More...
 
struct  ResourceBase
 Base class for engine resources. More...
 
struct  ResourceBuffer
 
struct  ResourceCache
 
struct  ResourceDefinition
 
struct  ResourceHandle_t
 Opaque resource handle for holding references to resources. More...
 
struct  ResourceHandleBase
 Resource handle base class handling reference counting of resources derived from ResourceBase. More...
 
struct  ResourceInfo
 
struct  ResourceLoadInfoBase
 
class  ResourceManager
 The generic resource manager provides a base implementation for specialized resource managers to build on. More...
 
class  ResourceManagerBase
 
struct  ResourceManagerBaseStorage
 
struct  ResourcePointerMap
 Structure to hold a set of pointers with constant time insertion and removal. More...
 
class  ResourceProxy
 
struct  ResourceQueryResult
 
class  ResourceStore
 Provides handling of reading and caching of external resources. More...
 
struct  ResourceStoreStorage
 
class  ResourceUsageLogger
 
class  RigidBodyComponent
 
struct  RigidBodyData
 
class  RigidBodySystem
 
class  RiserFlexJointComponent
 
class  RiserJointComponent
 
class  RiserTelescopicJointComponent
 
class  RiserTensionerComponent
 
struct  RotateCommand
 
struct  RotationKey
 
struct  RRMinMaxErrorGuidedTask
 
struct  RRMultiMinMaxErrorGuidedTask
 
struct  RRMultiSimplifyCommand
 
struct  RRMultiTaskBase
 
struct  RRMultiTriangleGuidedTask
 
class  RRSaveAllLodCommand
 
struct  RRSimplifiyCommand
 
struct  RRTaskBase
 
struct  RRTaskState
 
struct  RRTriangleGuidedTask
 
struct  ScaleCommand
 
struct  ScaleKey
 
struct  ScaleMeshCommand
 
struct  ScaleToUnitCubeCommand
 
class  Scene
 
class  SceneComponent
 Contains information on how the entity behaves in the scene. More...
 
struct  SceneDefinition
 
struct  SceneEntityDefinition
 
struct  SceneEntityFlags
 
struct  SceneInstanceData
 
struct  SceneParameters
 
struct  SceneState
 
class  SceneSystem
 The scene system handles SceneComponent instances, managing hierarchical visibility and pickability based on the components field values. More...
 
class  ScopedIndent
 
struct  ScreenshotSettings
 Screenshot render settings. More...
 
class  ScreenSizeComponent
 Allows to control the screen size of the entity. More...
 
struct  ScreenSizeData
 
class  ScreenSizeSystem
 
struct  ScriptArg
 
class  ScriptComponent
 
class  ScriptContext
 
struct  ScriptData
 Holds calculated data for a single script instance. More...
 
struct  ScriptFunction
 
class  ScriptingEngine
 
class  ScriptingManager
 
struct  ScriptObject
 
struct  ScriptProperty
 
class  ScriptSystem
 
class  SeaCurrentQuadtree
 
class  SeaCurrentsBounds
 Needs custom bounds calculation. More...
 
struct  SeaCurrentsComponent
 Component for displaying surface currents based on the IHO S111 standard. More...
 
struct  SeaCurrentsData
 
struct  SeaCurrentsExtension
 
class  SeaCurrentsRenderer
 
class  SeaCurrentsSystem
 The sea currents system manages and displays sea currents per the S-111 specification. More...
 
class  SelectCommand
 
struct  SeqParameterSet
 
struct  SerializationContext
 
class  Services
 Service registry. More...
 
struct  SetFieldCommand
 
struct  SetMaterialPropertyCommand
 
struct  SetTexturePropertyCommand
 
struct  ShaderDefinition
 
struct  ShaderInterfaceDefinition
 
struct  ShaderInterfaceMemberDefinition
 
struct  ShaderTypes
 
struct  ShaderVariantDefinition
 
struct  ShaderVariantEnum
 
struct  ShaderVariantRequirement
 
struct  ShaderVariantSelector
 
struct  ShadowBuffer
 
struct  ShadowData
 
struct  ShapeCache
 
struct  ShapeComponent
 
struct  ShapeDefinition
 Defines creation values for a unique shape. More...
 
class  ShapeSystem
 
struct  SharedRigidBodyData
 
struct  ShowLicensesCommand
 
struct  SimplifiedMeshSet
 
struct  SizeT
 
struct  Skeleton
 
struct  SliceLayer
 
struct  Sound
 
class  SoundManager
 
struct  SparseBuildOctreeCommand
 
class  SphereCollisionComponent
 
class  SphereCollisionSystem
 
class  SpringConstraintComponent
 
class  SpringConstraintSystem
 
struct  SpriteBatch
 
struct  SpriteMaterial
 
class  SpritePicker
 
class  SpriteRenderComponent
 
struct  SpriteRenderData
 
class  SpriteRenderSystem
 
struct  SpriteVertex
 
struct  StaticModelComponent
 
struct  StaticModelContext
 
struct  StaticModelData
 
class  StaticModelSystem
 
struct  StringParameter
 
struct  StringRef
 
class  StringViewCharPtr
 Utility class to ensure that a StringView string is null terminated. More...
 
struct  SubContext
 
struct  SubMesh
 Defines a sub-mesh of a Mesh resource. More...
 
struct  SubMeshLocalBounds
 
struct  SubMeshPicker
 
class  SubMeshRenderComponent
 Renders a mesh with flexible submesh usage. More...
 
struct  SubMeshRenderData
 
class  SubMeshRenderSystem
 The submesh render system handles SubMeshRenderComponents. More...
 
struct  SubMeshWorldBounds
 
struct  SwitchComponent
 Signals that an entity should only have one visible child at any time. More...
 
struct  SystemPriority
 Contains system priority enumeration. More...
 
class  Task
 Defines a task meant to be placed in a TaskQueue and handled by a TaskWorker instance. More...
 
struct  TaskId
 Task id struct used to identify unique Task instances. More...
 
class  TaskManager
 Manages Task queuing and execution. More...
 
class  TaskPool
 Task pool providing fast and easy allocation and deallocation of Task instances. More...
 
class  TaskQueue
 Task queues holds tasks ready for execution by TaskWorkers. More...
 
class  TaskQueues
 Manages the set of active task queues in the task manager. More...
 
class  TaskWorker
 Task worker executing Task instances retrieved from a TaskQueue. More...
 
class  TeleportNavigationComponent
 
class  TensionRingComponent
 
class  TerrainBounds
 
struct  TerrainComponent
 
struct  TerrainData
 
struct  TerrainExtension
 
class  TerrainPicker
 
class  TerrainRenderer
 
class  TerrainSystem
 
class  Text3DComponent
 Renders the given text(s) as 3D mesh data. More...
 
class  Text3DSystem
 The 3D text system handles Text3DComponents. More...
 
class  TextComponent
 Renders the given text(s) by generating sprites. More...
 
class  TextSystem
 The text system handles TextComponents. More...
 
struct  Texture
 Texture resources contain raster bitmap data to use for texturing. More...
 
class  TextureAllocator
 
class  TextureGenerator
 
struct  TextureGeneratorComponent
 Generates texture data and assigns the texture to either a MaterialComponent on the entity or the set material target. More...
 
class  TextureGeneratorSystem
 
struct  TextureLoadInfo
 
class  TextureManager
 Texture manager responsible for loading, processing, activation and lifetime of Texture resources. More...
 
struct  TextureProperty
 Property value for texture samplers. More...
 
struct  TextureValue
 
struct  TextureWithSampler
 
class  Time
 Provides time services for components depending on elapsed or system time for animation or other tracking. More...
 
struct  TimingScope
 
struct  TrackCache
 
class  TrajectoryAlignedComponent
 Aligns the entity along a trajectory at a specified depth. More...
 
struct  TrajectoryComponent
 Data component defining a 3D trajectory, for example a Well trajectory. More...
 
struct  TrajectoryCrossSectionsComponent
 
struct  TrajectoryCrossSectionsData
 
class  TrajectoryCrossSectionsSystem
 
struct  TrajectoryData
 
struct  TrajectoryLayoutComponent
 
class  TrajectoryLayoutSystem
 
class  TrajectorySystem
 
class  TransformComponent
 Defines a 4x4 transformation matrix for the entity and a global offset for root entities. More...
 
struct  TransformItem
 
struct  TransformState
 Defines the state of a transform. More...
 
class  TransformSystem
 The transform system handles TransformComponent instances, calculating local and global transform data for each component. More...
 
struct  TranslateCommand
 
struct  TranslationKey
 
struct  TransparencyDrawContext
 
struct  TransparencyMergeTask
 
struct  TransparencyParameters
 
struct  TransparencyRenderTask
 
struct  TransparencyTemporalUpscaleTask
 
struct  TransparencyUpscaleTask
 
class  TriggerComponent
 
class  TriggerSystem
 
struct  TSCallbackData
 
struct  UniqueVerticesCommand
 
struct  UnpackOptions
 
struct  ValueDefinition
 
struct  ValueVariant
 
struct  Variable
 Runtime control variable. More...
 
struct  VariableExtrusionComponent
 
struct  VariableExtrusionData
 
class  VariableExtrusionSystem
 
class  Variables
 Manages runtime variables for the engine. More...
 
struct  vec1010102
 
struct  VertexDataType
 Defines vertex data types used to track streams in Mesh instances. More...
 
struct  VertexFormats
 
struct  VideoCaptureComponent
 
struct  VideoCaptureData
 
class  VideoCaptureRenderer
 
class  VideoCaptureSystem
 
struct  VideoDecoderCallbackData
 
struct  VideoDecoderCaps
 
struct  VideoDecoderDescription
 
struct  VideoDecoderPayload
 
struct  VideoDecoderStatus
 
struct  VideoEncoderDescription
 
struct  VideoEncoderInput
 
struct  VideoEncoderPayload
 
struct  VideoEncoderStatus
 
struct  VideoPlaybackComponent
 
struct  VideoPlaybackData
 
class  VideoPlaybackSystem
 
struct  VideoPresentCallbackData
 
struct  ViewBufferEntry
 
class  ViewContext
 
struct  VuiParameters
 
class  WaveSoundLoader
 
struct  WellLogExtension
 
struct  WorldBounds
 
struct  WorldTransform
 Defines world transform data. More...
 
struct  WriteModelSettings
 
struct  ZipComponent
 Component displaying a 3D log on a trajectory. More...
 
struct  ZipData
 
class  ZipSystem
 

Typedefs

using ComponentCreator = std::function< ComponentModel::ComponentHandle(void)>
 
using ComponentDestroyer = std::function< void(ComponentModel::ComponentHandle)>
 
typedef void ResourceLoadCallback(class Context *context, int resourceType, ResourceId id, int code)
 Resource loading callback.
 
typedef void HierarchyChangeCallback(class Context *context, EntityId entityId)
 Hierarchy change callback.
 
typedef void RenderCallback(class Context *context)
 
typedef void ReadbackCallback(class Context *context, const char *key, const void *data, int size)
 
typedef void ReadbackCallbackInternal(class Context *context, const CameraData *, uint32_t frame, const char *key, const void *data, int size)
 
typedef void MessageCallback(int messageId, const void *data)
 
typedef void ComponentNotifyCallback(BridgeContext *context, int componentTypeId, size_t entityId, int notification, const void *data, size_t dataSize)
 Callback to receive component notifications.
 
using EntityIds = std::vector< EntityId >
 
using TextureHandle = ResourceHandle_t< Texture >
 
typedef void NeedsUpdateCallback(void *data)
 
using MaterialInstanceDefinition = ResourceDefinition
 
using EntityPtr = std::shared_ptr< ComponentModel::Entity >
 Smart pointer for Entity access.
 
using ConstEntityPtr = std::shared_ptr< const ComponentModel::Entity >
 Smart pointer for const Entity access.
 
using WeakEntityPtr = std::weak_ptr< ComponentModel::Entity >
 Weak Smart pointer for Entity access.
 
using ConstWeakEntityPtr = std::weak_ptr< const ComponentModel::Entity >
 Weak Smart pointer for const Entity access.
 
typedef std::function< void(Context *context, bool *show)> Inspector
 
typedef std::vector< RenderItemRenderItems
 
typedef std::vector< std::pair< std::string, std::string > > PipelineOptions
 
typedef std::vector< RenderTask * > RenderTaskList
 
typedef std::function< RenderTask *(RenderTaskContext *, const RenderTaskDefinition &, const PipelineOptions &)> TaskCreator
 
typedef std::function< void(RenderTask **, RenderTaskContext *)> TaskDestroyer
 
using TextureDefinition = ResourceDefinition
 
using ResourcesDefinition = std::vector< ResourceDefinition >
 
typedef ResourceLoadInfoBase BufferLoadInfo
 
typedef IResourceLoader< Font, FontLoadInfoIFontLoader
 
typedef IResourceLoader< Model, ModelLoadInfoIModelLoader
 
typedef ILoadedResourceLoader< Model, ModelLoadInfoILoadedModelLoader
 
typedef IResourceLoader< Texture, TextureLoadInfoITextureLoader
 
typedef IAsyncResourceLoader< Texture, TextureLoadInfoIAsyncTextureLoader
 
typedef ILoadedResourceViewLoader< Texture, TextureLoadInfoILoadedTextureLoader
 
typedef std::string PropertyName
 Typedef for property names.
 
using BlueNoiseHandle = ResourceHandle_t< BlueNoise >
 
using EffectHandle = ResourceHandle_t< Effect >
 
using MaterialHandle = ResourceHandle_t< Material >
 
using MaterialInstanceHandle = ResourceHandle_t< MaterialInstance >
 
using ModelHandle = ResourceHandle_t< Model >
 
using MeshHandle = ResourceHandle_t< Mesh >
 
using FontHandle = ResourceHandle_t< Font >
 
using AnimationHandle = ResourceHandle_t< Animation >
 
using GuiDocumentHandle = ResourceHandle_t< GuiDocument >
 
using AssetHandle = ResourceHandle_t< Asset >
 
using ResourceBufferHandle = ResourceHandle_t< BufferResource >
 
using VariableKey = uint16_t
 Used to lookup material properties.
 
using ConstantBufferKey = uint16_t
 
using ShaderVariants = std::vector< ShaderVariantDefinition >
 
using ShaderVariantSelectors = std::vector< ShaderVariantSelector >
 
typedef BillboardVertex TextVertex
 
typedef BillboardVertex OverlayVertex
 
using ScriptArgs = std::vector< ScriptArg >
 
using ScriptFunctionType = std::function< ScriptObject *(ScriptObject *, const ScriptArgs &args)>
 
using ScriptProxyGet = std::function< ScriptObject *(ScriptObject *, const StringView &key)>
 
using ScriptProxySet = std::function< bool(ScriptObject *, const StringView &key, const ScriptArg &arg)>
 
using ScriptContextHandle = std::shared_ptr< ScriptContext >
 
using TaskQueueId = uint16_t
 Unique id for a task queue.
 
using TaskFunction = std::function< void()>
 Type of task function used by the task manager.
 
using TaskFunctionRef = const TaskFunction &
 
using MessageId = size_t
 
typedef std::function< void(Context *, EntityId)> HierarchyChangedCallback
 
using SpriteBatchIndex = size_t
 
using SpriteIndex = size_t
 
using SpriteMaterialKey = size_t
 
using TokenStream = std::vector< StringView >
 
using ResizeCallback = void(class ViewContext *context, int x, int y)
 
typedef ResourceHandle_t< SoundSoundHandle
 
using SoundLoadInfo = ResourceLoadInfoBase
 
typedef std::vector< MeshRepMeshReps
 
using CommandCreator = std::function< EditorCommand *(EditorState *)>
 
using VideoDecoderCallback = void(const VideoDecoderCallbackData &)
 
using VideoPresentCallback = void(const VideoPresentCallbackData &)
 
using VideoEncoderCallback = std::function< void(struct IVideoEncoder *, struct VideoEncoderPayload &payload)>
 
typedef std::function< void(TSCallbackData &)> TSCallback
 
typedef std::function< void(uint8_t *data, size_t size)> TSEncodeCallback
 

Enumerations

enum struct  BasicOceanWaves { Default , Quux }
 
enum struct  BasicOceanReflection { Planar , EnvSkyBox , EnvRadiance }
 
enum struct  BasicOceanBeliefSystem { FlatEarth , CurvedEarth }
 
enum struct  BasicTerrainElevationChannel : uint32_t { Red , Alpha , RedGreenBlue }
 
enum struct  BasicTerrainTransparencyMode : uint32_t { None , Regular , BlendWithZWrite }
 
enum class  FontSelectorFlags { ApplyToChildren , SelfOnly }
 
enum class  AssetFlags {
  None = 0 , InstantiateOnDemand = 1 << 0 , RelativePaths = 1 << 1 , OverrideMaterial = 1 << 2 ,
  CloneMaterial = 1 << 4
}
 Controls asset system's model instance behaviour. More...
 
enum struct  AssetResourceType : uint32_t { Asset , Model }
 Utility function to format a resource index as a filename. More...
 
enum class  ProjectionMode { Perspective = 0 , Orthographic }
 Defines projection modes for the camera. More...
 
enum class  CameraFlags : uint32_t {
  None = 0 , EnableRender = 1 << 0 , EnablePicking = 1 << 1 , FlipY = 1 << 2 ,
  OverrideClearColor = 1 << 3
}
 
enum struct  CaptureMode : unsigned {
  Off , Scene , ObjectId , ObjectIdColorize ,
  Normals , Depth
}
 
enum struct  CaptureSceneMode : unsigned { Forward , ForwardHdr , DeferredCausticsHdr }
 
enum struct  CaptureFormat : unsigned { PNG , RawARGB , RawFloat }
 
enum struct  ClipShapeType : uint32_t { None , Cube , InvertedCube }
 Specifices what kind of shape a clip shape has. More...
 
enum class  LightType { Directional , Point , Spot }
 Defines light types. More...
 
enum class  LightingLayers : uint32_t { None = 0 , Default = 1 << 0 , All = 0xFFFFFFFFu }
 
enum class  ShadowUpdate {
  Default = 0 , Dynamic = 1 , Partial = 2 , Static = 3 ,
  StaticPartial = 4 , None = 5
}
 
enum class  SoftShadows { None = 0 , Low , High , Default = High }
 
enum class  LodPolicy { None = 0 , CenterDistance , GeometricTolerance }
 Defines policies for controlling level of detail. More...
 
enum struct  GeometricErrorKind { DistanceBased , AreaBased }
 Defines kinds of geometric error calculations. More...
 
enum struct  RenderFlags : uint32_t {
  None = 0 , SelfVisibility = 1 << 0 , ParentVisibility = 1 << 1 , SpecificVisibility = 1 << 2 ,
  SelfPickable = 1 << 3 , ParentPickable = 1 << 4 , CastShadows = 1 << 5 , CustomMaterial = 1 << 6 ,
  ForcePickable = 1 << 7 , DisableCulling = 1 << 8 , Default = SelfVisibility | ParentVisibility | SpecificVisibility | SelfPickable | ParentPickable | CastShadows , DefaultNoShadows = SelfVisibility | ParentVisibility | SpecificVisibility | SelfPickable | ParentPickable
}
 Contains flags to describe rendering behavior. More...
 
enum struct  RenderLayers : uint32_t {
  None = 0u , Default = 1u << 0 , Ocean = 1u << 1 , Annotations = 1u << 2 ,
  Sky = 1u << 3 , Overlay = 1u << 4 , Controllers = 1u << 5 , AllStandard = 0x0000003Fu ,
  Reserved0 = 1u << 6 , Reserved1 = 1u << 7 , Reserved2 = 1u << 8 , Reserved3 = 1u << 9 ,
  Reserved4 = 1u << 10 , Reserved5 = 1u << 11 , AllReserved = 0x00000FC0u , Custom0 = 1u << 12 ,
  Custom1 = 1u << 13 , Custom2 = 1u << 14 , Custom3 = 1u << 15 , Custom4 = 1u << 16 ,
  Custom5 = 1u << 17 , Custom6 = 1u << 18 , Custom7 = 1u << 19 , Custom8 = 1u << 20 ,
  Custom9 = 1u << 21 , Custom10 = 1u << 22 , Custom11 = 1u << 23 , Custom12 = 1u << 24 ,
  Custom13 = 1u << 25 , Custom14 = 1u << 26 , Custom15 = 1u << 27 , Custom16 = 1u << 28 ,
  Custom17 = 1u << 29 , Custom18 = 1u << 30 , Custom19 = 1u << 31 , AllCustom = 0xFFFFF000u ,
  All = 0xFFFFFFFFu
}
 Contains common render layers. More...
 
enum struct  SizeMode { Relative = 0 , Pixels = 1 }
 Sizing mode. More...
 
enum struct  PositionMode { Relative = 0 , Pixels = 1 , World = 2 , Local = 3 }
 Positioning mode. More...
 
enum class  Alignment : uint32_t {
  Left = 0x00 , Center = 0x01 , Right = 0x02 , Top = 0x00 ,
  Middle = 0x10 , Bottom = 0x20 , TopLeft = Left | Top , TopCenter = Center | Top ,
  TopRight = Right | Top , MiddleLeft = Left | Middle , MiddleCenter = Center | Middle , MiddleRight = Right | Middle ,
  BottomLeft = Left | Bottom , BottomCenter = Center | Bottom , BottomRight = Right | Bottom , Horizontal = 0x0F ,
  Vertical = 0xF0 , Default = TopLeft
}
 
enum class  VerticalAlignment { Top = 1 , Center = 2 , Bottom = 3 }
 Defines vertical alignment modes for text. More...
 
enum class  HorizontalAlignment { None = 0 , Left = 1 , Right = 2 , Center = 3 }
 Horizontal alignment of overlays. More...
 
enum class  HorizontalJustification { Left = 1 , Right = 2 , None = 3 }
 Horizontal justification modes for text. More...
 
enum struct  MarkerPointSetShape : uint32_t { ViewAlignedDisc , ObjectSpaceFloorDisc , FixedScreenSizeDisc }
 
enum class  ShapePrimitiveType {
  Default = 0 , TriangleList = 1 , TriangleStrip = 2 , DefaultLine = 3 ,
  LineList = 4 , LineStrip = 5 , TriangleListAdjacency = 6 , TriangleStripAdjacency = 7 ,
  LineListAdjacency = 8 , LineStripAdjacency = 9 , PointList = 10 , ShapePrimitiveType_Size
}
 
enum class  SelectMode { Exclusive = 0 , Toggle , Add }
 
enum class  DefaultValueType {
  Unknown = 0 , Bool , Float , Int ,
  Enum , Vec2 , Vec3 , Vec4 ,
  Mat4 , DVec2 , DVec3 , DVec4 ,
  Quaternion , MaterialInstance , Model , Asset ,
  Mesh , Texture , Gui , String ,
  MultiString , IntArray , FloatArray , Vec2Array ,
  Vec3Array , Vec4Array , Entity , EntityArray ,
  Extension
}
 Defines value types for default values. More...
 
enum class  EntityFind { Default = 1 , PartialNameMatch = 1 << 1 , NonRecursive = 1 << 2 , MaxFlag = 1 << 7 }
 Options to findEntity/getEntityFull. More...
 
enum struct  ImageType : int {
  None = 0 , CheckerBoard , ColorfulCheckerBoard , Dirt ,
  Steel , ColorCube , Sky , SkyCube ,
  SkyRadiance , SkyIrradiance , SkyAmbientIrradiance , SubseaRadiance ,
  GradientRainbow , GradientHeat
}
 
enum struct  ShapeType : uint32_t {
  None = 0 , Plane , Sphere , SphereGeoTexSph ,
  SphereGeoTexCyl , Cylinder , Cone , Cube ,
  WireCube , CubeTex2D , CoordSys , CircularArc
}
 Shape types generated by mesh generator. More...
 
enum class  InputDeviceType : uint32_t { None = 0 , Keyboard = 1 , Mouse = 2 }
 
enum  : uint32_t {
  GUI_MODE_DEFAULT = 0 , GUI_MODE_TEX_OFFSET_MASK = 255 , GUI_MODE_TEX_TYPE_2D = (0u) << 26 , GUI_MODE_TEX_TYPE_ARRAY = (1u) << 26 ,
  GUI_MODE_TEX_TYPE_CUBE = (2u) << 26 , GUI_MODE_TEX_TYPE_2DMS = (3u) << 26 , GUI_MODE_TEX_TYPE_MASK = (3u) << 26 , GUI_MODE_TEX_CHANNELS_RGB = (0u) << 28 ,
  GUI_MODE_TEX_CHANNELS_ALPHA = (1u) << 28 , GUI_MODE_TEX_CHANNELS_RED = (2u) << 28 , GUI_MODE_TEX_CHANNELS_111R = (3u) << 28 , GUI_MODE_TEX_CHANNELS_MASK = (7u) << 28 ,
  GUI_MODE_MASK = GUI_MODE_TEX_TYPE_MASK | GUI_MODE_TEX_CHANNELS_MASK
}
 
enum class  EnginePermutationFlags {
  None = 0 , DepthOnly = 1 << 0 , NoShading = 1 << 1 , ReverseDepth = 1 << 2 ,
  HasBuiltins = 1 << 3
}
 
enum class  RenderMode { Normal = 0 , Wireframe = 1 , Box = 3 }
 Defines global rendering modes that can be supported by the renderer. More...
 
enum struct  RenderItemFlags : uint16_t {
  None = 0 , Custom = 1 << 0 , CastShadows = 1 << 1 , CalculateDepth = 1 << 2 ,
  Sprite = 1 << 3 , AlwaysOnTop = 1 << 4 , Clockwise = 1 << 5 , Transparent = 1 << 6 ,
  Backdrop = 1 << 7 , CustomBucket = 1 << 8 , CustomBounds = 1 << 9 , Custom2 = 1 << 10 ,
  DisableCulling = 1 << 11 , Instanced = 1 << 12 , ObjectBufferSlot = 1 << 13
}
 
enum struct  StateChangeFlags : uint16_t {
  ChangeNone = 0 , ChangeTransform = 1 << 0 , ChangeMesh = 1 << 1 , ChangeMaterialInstance = 1 << 2 ,
  ChangeMaterialVariant = 1 << 3 , ChangeRasterizerState = 1 << 4 , ChangeBlendState = 1 << 5 , ChangeDepthStencilState = 1 << 6 ,
  ChangeLayer = 1 << 7 , ChangeViewport = 1 << 8 , ChangeViewportData = 1 << 9 , ChangeAll = 0xFFFF
}
 
enum struct  BucketType {
  Backdrop = 0 , SolidOrderedBack , Solid , SolidOrderedFront ,
  Transparent , Overlay , Custom , Count
}
 
enum class  BucketMask {
  BackDrop = 1 << size_t(BucketType::Backdrop) , Transparent = 1 << size_t(BucketType::Transparent) , Solid = (1 << size_t(BucketType::SolidOrderedBack)) | (1 << size_t(BucketType::Solid)) | (1 << size_t(BucketType::SolidOrderedFront)) , Opaque = Solid ,
  Overlay = 1 << size_t(BucketType::Overlay) , Custom = 1 << size_t(BucketType::Custom) , All = ~0 , None = 0
}
 
enum class  RenderResourceType : uint8_t {
  Unknown = 0 , TaskResource , RenderTarget , RenderList ,
  RenderBuffer , RenderTexture , RenderMesh , RenderEffect ,
  RenderMaterial , RenderMaterialInstance
}
 
enum class  RenderResourceFlags : uint8_t {
  None = 0 , Persistent = 1 << 0 , Override = 1 << 1 , Owned = 1 << 2 ,
  Active = 1 << 3 , Delayed = 1 << 4 , Failed = 1 << 5 , Released = 1 << 6
}
 
enum class  SortFlags {
  None = 0 , Default = 0 , Depth = 1 << 0 , DrawOrder = 1 << 1 ,
  DrawOrderAndDepth = 1 << 2
}
 
enum  EffectDefinitionFlags { None = 0 , Custom = 0x0001 }
 
enum class  MaterialDefinitionFlags : uint32_t { None = 0 , IsTemplate = 1 << 0 }
 
enum class  MaterialLoadFlags : uint32_t { None = 0 , DelayVariantLoading }
 Material loading flags. More...
 
enum class  BlendMode {
  Blend = 0 , Add , PremultipliedBlend , AlphaToCoverage ,
  None , Zero , One_One_Zero_InverseSourceAlpha , InverseSourceAlpha_SourceAlpha ,
  Count
}
 Defines blending modes for rendering. More...
 
enum class  DepthMode {
  Default = 0 , NoWrite = 1 , AlwaysWrite = 2 , Disabled = 3 ,
  Count
}
 Defines common depth stencil modes. More...
 
enum class  DepthFunc {
  Less = 0 , Always = 1 , LessOrEqual = 2 , NotEqual = 3 ,
  Equal = 4 , Count
}
 Defines common depth functions. More...
 
enum class  CullMode { None = 0 , Back , Front }
 Defines primitive culling modes. More...
 
enum class  TransparencyMode {
  None = 0 , Off = None , Regular = 1 , On = Regular ,
  Auto , Alpha
}
 
enum struct  MaterialPropertyFlags : uint8_t { None = 0 , sRGB = 1 << 0 , Normalized = 1 << 1 , PartitionOfUnity = 1 << 2 }
 
enum class  TextureDimensions { Texture2D = 0 , TexureCube = 1 , Texture3D = 2 , Texture2DArray = 3 }
 Texture dimensions. More...
 
enum class  MaterialDataType {
  Unknown = 0 , Float , Float2 , Float3 ,
  Float4 , Float4x4 , Float4Array , Float4x4Array ,
  Int , Int2 , Int3 , Int4 ,
  UInt , UInt2 , UInt3 , UInt4 ,
  Bool , Texture , VFACE , ClipDistance ,
  SV_IsFrontFace , SV_InstanceID , Position
}
 Defines available data types for material properties. More...
 
enum class  ActivationResult : uint16_t { Success = 0x0001 , Failure = 0x0002 , Postponed = 0x0004 , Delayed = 0x0008 }
 Defines results for resource activation. More...
 
enum class  ResourceFlags : uint32_t {
  None = 0 , Initialized = 1 << 0 , Queued = 1 << 1 , Loading = 1 << 2 ,
  Loaded = 1 << 3 , Changed = 1 << 4 , Active = 1 << 5 , Resident = 1 << 6 ,
  Static = 1 << 7 , Orphaned = 1 << 8 , Deleted = 1 << 9 , Locked = 1 << 10 ,
  Dependency = 1 << 11 , Watched = 1 << 12 , Error = 1 << 13 , FailedLoad = 1 << 14 ,
  FailedActivation = 1 << 15 , Proxy = 1 << 16 , KeepStorage = 1 << 17
}
 Flags for describing resource attributes. More...
 
enum class  ResourceTypes : uint32_t {
  Unknown = 0 , Asset , Model , Texture ,
  Effect , Material , MaterialInstance , Mesh ,
  Buffer , Font , Gui
}
 Resource types. More...
 
enum class  ResourceError : uint32_t { None = 0 }
 
enum class  ResourceLoadFlags {
  None = 0 , ForceSynchronous = 1 << 0 , Reload = 1 << 1 , AutoReload = 1 << 2 ,
  NoDefaultName = 1 << 3 , ForceUnique = 1 << 4 , DoNotCache = 1 << 5 , DoNotStoreSource = 1 << 6 ,
  ResourceSpecificFlag = 1 << 16
}
 Flags for describing how to load a resource. More...
 
enum class  TextureLoadFlags {
  None = int(ResourceLoadFlags::None) , ForceSynchronous = int(ResourceLoadFlags::ForceSynchronous) , Reload = int(ResourceLoadFlags::Reload) , AutoReload = int(ResourceLoadFlags::AutoReload) ,
  NoDefaultName = int(ResourceLoadFlags::NoDefaultName) , ForceUnique = int(ResourceLoadFlags::ForceUnique) , DoNotCache = int(ResourceLoadFlags::DoNotCache) , First = int(ResourceLoadFlags::ResourceSpecificFlag) ,
  Flip = First , LinearColorSpace = First << 1 , NoMipMaps = First << 3 , NoDelete = First << 4 ,
  ColorSpaceFromLoadInfo = First << 5
}
 Texture loading flags. May be combined with resource load flags. More...
 
enum class  ModelLoadFlags {
  None = int(ResourceLoadFlags::None) , ForceSynchronous = int(ResourceLoadFlags::ForceSynchronous) , Reload = int(ResourceLoadFlags::Reload) , AutoReload = int(ResourceLoadFlags::AutoReload) ,
  NoDefaultName = int(ResourceLoadFlags::NoDefaultName) , ForceUnique = int(ResourceLoadFlags::ForceUnique) , DoNotCache = int(ResourceLoadFlags::DoNotCache) , First = int(ResourceLoadFlags::ResourceSpecificFlag) ,
  NeedsTangents = First , AutomaticTransparency = First << 1 , ForceTwoSidedMaterial = First << 2 , DisableOptimization = First << 3 ,
  SkipMaterials = First << 4 , NoFlipTexcoords = First << 5 , CustomExtensionFlag = NeedsTangents << 8
}
 Model loading flags. May be combined with resource loading flags. More...
 
enum class  AssetLoadFlags {
  None = int(ResourceLoadFlags::None) , ForceSynchronous = int(ResourceLoadFlags::ForceSynchronous) , Reload = int(ResourceLoadFlags::Reload) , AutoReload = int(ResourceLoadFlags::AutoReload) ,
  NoDefaultName = int(ResourceLoadFlags::NoDefaultName) , ForceUnique = int(ResourceLoadFlags::ForceUnique) , DoNotCache = int(ResourceLoadFlags::DoNotCache) , First = int(ResourceLoadFlags::ResourceSpecificFlag) ,
  ClearScene = First , NoDefault = First << 1
}
 Asset and Scene loading flags. May be combined with resource loading flags. More...
 
enum class  ResourceStoreFlags { None = 0 , NoCachedContent = 1 << 0 , QueryOnly = 1 << 1 , PreferUncachedContent = 1 << 2 }
 
enum class  ResourceProtocol {
  None = 0 , File = 1 , Default = File , Cache = 2 ,
  Archive = 3 , Http = 4 , Other = 5
}
 
enum class  ShaderVariantType {
  None = 0 , Bool , Int , Enum ,
  Format , String
}
 
enum class  ShaderVarientFlags { None = 0 , DepthOnly = 1 << 0 , NoShading = 1 << 1 , ReverseDepth = 1 << 2 }
 
enum class  PickingFlags : uint32_t {
  None = 0 , PickSprites = 1 << 0 , ReturnChildEntity = 1 << 1 , RemoveDuplicateEntities = 1 << 2 ,
  RemoveDuplicates = 1 << 3 , FlatTexcoordInterpolation = 1 << 4 , AddInstanceTexcoords = 1 << 5
}
 Options for COGS picking. More...
 
enum class  PicksReturned { Closest , AllUnsorted , AllSorted }
 Â  * Options for returning picking hits. More...
 
enum class  ScriptFlags {
  None = 0 , Unknown = 1 << 0 , JavaScript = 1 << 1 , Lua = 1 << 2 ,
  SourceText = 1 << 3 , SourcePath = 1 << 4
}
 
enum class  ScriptValueType { Undefined = 0 , Object = 1 , String = 2 , Proxy = 3 }
 
enum class  AssetWriteFlags : uint32_t {
  None = 0 , Geometry = 1 , PrettyPrint = 2 , Strip = 4 ,
  Compress = 8 , Hierarchy = 16
}
 Flags that control serialization of assets. More...
 
enum class  EntityParentMode { None = 0 , Default , TransformOnly }
 
enum class  JsonParseFlags { None = 0 , NoCachedContent = 1 << 0 , Compressed = 1 << 1 , PreferUncachedContent = 1 << 2 }
 
enum struct  WriteModelFlags : uint32_t {
  NONE = 0 , COMPRESS_ZSTD = 1u<<0 , COMPRESS_ZSTD_AS_FILE = 1u<<1 , COMPRESS_MAX = 1u<<2 ,
  SEPARATE_ROOT_NODE_SECTIONS = 1u<<3 , EMBED_TEXTURES = 1u<<4
}
 
enum struct  CPUFeature : uint32_t { None = 0 , All = ~0u }
 
enum struct  PlatformPreference : uint32_t { None = 0 , AsyncFetch = (1<<0) , BackgroundTasks = (1<<1) }
 
enum struct  PropertyType {
  Unknown = 0 , FirstInlineType , Bool = FirstInlineType , Integer ,
  Int2 , UnsignedInteger , UInt2 , Float ,
  Float2 , Double , StringRef , LastInlineType ,
  String , DoubleArray , FloatArray , IntArray ,
  UIntArray , LastType
}
 
enum struct  QualityRequest { AtTarget , HasSlack , ThrottleDown , RapidBackoff }
 
enum class  MetricType : unsigned int {
  Idle , Frame , PreRender , Present ,
  MetricTypeCount
}
 
enum class  TaskFlags : uint16_t { None = 0 , Group = 1 }
 
enum class  VariableFlags { None = 0 , Empty = 1 << 0 , Static = 1 << 1 }
 Variable flags, specifying variable behavior. More...
 
enum struct  MeshRenderDataFlags { None = 0 , LocalBoundsOverride = 1 << 0 , WorldBoundsOverride = 1 << 2 }
 
enum struct  FrustumPlanes : uint8_t {
  InsideNone = 0 , InsidePosX = 1 , InsideNegX = 2 , InsidePosY = 4 ,
  InsideNegY = 8 , InsidePosZ = 16 , InsideNegZ = 32 , InsideAll = 63 ,
  InsideFar = 16 , InsideNear = 32 , InsideAllButNear = 31 , InsideAllButFar = 47
}
 
enum struct  ParsedValueTextureFlags { None = 0 , LinearSampler = 1<<0 }
 
enum struct  SimplexResult : int { OptimalSolutionFound = 1 , NoFeasibleSolutions = 0 , TooManyIterations = -1 , BlandsFailed = -2 }
 
enum class  ParsedDataType {
  Unknown = 0 , Object , String , Float ,
  Float2 , Float3 , Float4 , Float4x4 ,
  Int , Int2 , Int3 , Int4 ,
  UInt , UInt2 , UInt3 , UInt4 ,
  Bool , Double , Number = Double , Texture2D ,
  ConstantBuffer , Buffer , Count
}
 
enum class  AudioState {
  None = 0 , StartPlaying , Playing , StopPlaying ,
  Stopped
}
 
enum class  CameraEasingMode : uint32_t {
  Linear , QuadraticIn , QuadraticOut , QuadraticInOut ,
  CubicIn , CubicOut , CubicInOut , QuarticIn ,
  QuarticOut , QuarticInOut , QuinticIn , QuinticOut ,
  QuinticInOut , SinusoidalIn , SinusoidalOut , SinusoidalInOut ,
  ExponentialIn , ExponentialOut , ExponentialInOut , CircularIn ,
  CircularOut , CircularInOut , ElasticIn , ElasticOut ,
  ElasticInOut , BackIn , BackOut , BackInOut ,
  BounceIn , BounceOut , BounceInOut , SIZE
}
 
enum class  Icon {
  None = 0 , New , Open , Save ,
  Undo , Redo , Select , Move ,
  Rotate , Scale , Plus , Minus ,
  Info , Gears , Eye , Solid ,
  Wireframe , BoundingBox , PivotLocal , PivotCenter ,
  Hide , HideUnselected , ShowAll , SelectFurthestAway ,
  IconInvertVisibility
}
 
enum class  EditingMode {
  None = 0 , Select , Translate , Rotate ,
  Scale
}
 
enum class  EditingPivot { ObjectPivot = 0 , ObjectCenter , GroupCenter , Default = ObjectCenter }
 
enum class  KeyboardModifiers { None = 0 , Control = 1 << 0 , Shift = 1 << 1 , Alt = 1 << 2 }
 Current keyboard modifiers. More...
 
enum class  InputEventType { Keyboard , Mouse , Reset }
 Type of data in input event queue. More...
 
enum class  GuiPointerSource {
  Auto = 0 , Mouse , ProjectedMouse , ProjectedCenter ,
  Projector
}
 
enum struct  Image360Notification { None , Ready , FetchingBegin , FetchingEnd }
 
enum struct  OGC3DTilesNotification { None , TilesetInitializing , TilesetReady }
 
enum struct  PotreeNotification { None = 0 , FetchingBegin = 2 , FetchingEnd = 3 }
 
enum struct  PotreeColoring : uint32_t { Base , Color , Intensity , Level }
 
enum struct  PotreeShading : uint32_t { Flat , Basic }
 
enum struct  PotreePointShape : uint32_t { Square , Disc , Paraboloid , Sphere }
 
enum struct  PotreePointSizing : uint32_t { FixedSize , DistanceScaled , DistanceAndDensityScaled }
 
enum struct  PotreeDebugBoxes : uint32_t { None , ActiveCells , ActiveLeafCells }
 
enum struct  PotreeOriginPolicy : uint32_t { None , CenterOnOrigin , CenterOnOriginAdjustCoordinate }
 
enum struct  PotreeState {
  Uninitialized , Error , RequestedCloudJS , ParsedCloudJs ,
  Running
}
 
enum struct  PotreeeType {
  None , Double , Float , Int8 ,
  UInt8 , Int16 , UInt16 , Int32 ,
  UInt32 , Int64 , UInt64
}
 
enum struct  PotreeEnconding { Default , ZStd , Brotli }
 
enum struct  PotreeAttributes {
  POSITION_CARTESIAN = 0 , RGBA_PACKED , RGB_U8_PACKED , RGB_U16_PACKED ,
  NORMAL , NORMAL_SPHEREMAPPED , NORMAL_OCT16 , INTENSITY_U16 ,
  CLASSIFICATION , FILLER_1B , COUNT
}
 
enum struct  PotreeVertexLayout {
  POSITION , POSITION_COLOR , POSITION_NORMAL , POSITION_COLOR_NORMAL ,
  POSITION_INTENSITY , POSITION_COLOR_INTENSITY , POSITION_NORMAL_INTENSITY , POSITION_COLOR_NORMAL_INTENSITY ,
  POSITION_CLASSIFICATION , POSITION_COLOR_CLASSIFICATION , POSITION_NORMAL_CLASSIFICATION , POSITION_COLOR_NORMAL_CLASSIFICATION ,
  POSITION_INTENSITY_CLASSIFICATION , POSITION_COLOR_INTENSITY_CLASSIFICATION , POSITION_NORMAL_INTENSITY_CLASSIFICATION , POSITION_COLOR_NORMAL_INTENSITY_CLASSIFICATION ,
  COUNT
}
 
enum class  ArrowScalingMode : int { Off , Normal , PerBand }
 Different modes for scaling surface current arrows based on the speed of the current. More...
 
enum class  TransferFunction : uint32_t { Linear , BT601 , sRGB , Gamma }
 
enum class  ColourSpace : uint32_t { BT601 , BT601Full , BT709 , BT709Full }
 
enum struct  Codec { None = -1 , H264 , HEVC }
 
enum struct  ChromaFormat : unsigned { Monochrome , Chroma420 , Chroma422 , Chroma444 }
 
enum struct  VideoDecoderPresentMode { Smooth = 1 , Realtime , Latest }
 
enum  PictureType {
  UNKNOWN , P , B , I ,
  IDR , BI , SKIPPED , INTRA_REFRESH ,
  NONREF_P
}
 
enum struct  H264Profile : unsigned { Baseline , Main , High }
 
enum struct  H264Preset : unsigned {
  Default , HighQuality , HighPerformance , LowLatencyHighDefault ,
  LowLatencyHighQuality , LowLatencyHighPerformance , LosslessDefault , LosslessHighPerformance
}
 
enum struct  BFrameReference : unsigned { Disabled , Each , Middle }
 

Functions

 ENABLE_ENUM_FLAGS (AssetFlags)
 
COGSCORE_DLL_API std::string createAssetResourcePathFromIndex (uint32_t resourceIndex, AssetResourceType assetResourceType)
 
 ENABLE_ENUM_FLAGS (CameraFlags)
 
 ENABLE_ENUM_FLAGS (LightingLayers)
 
 ENABLE_ENUM_FLAGS (RenderFlags)
 
 ENABLE_ENUM_FLAGS (RenderLayers)
 
 ENABLE_ENUM_FLAGS (Alignment)
 
template<typename T >
void applyFieldValue (void *object, const Reflection::Field *field, T &value)
 
void updateMaterialInstance (Context *context, MaterialInstance *materialInstance, const MaterialInstanceDefinition &value)
 Apply material instance values.
 
void applyMaterialInstanceValue (Context *context, void *component, const Reflection::Field *field, const FieldValue &value)
 
void applyFieldValues (class Context *context, std::span< FieldValue > entityDefinition, ComponentModel::Entity *entity)
 Apply defaults from the given entityDefinition to the given entity.
 
void COGSCORE_DLL_API createDefaultEntityDefinitions (class EntityStore *entityStore)
 Create the default entity definitions supported by Cogs.
 
void COGSCORE_DLL_API createEntityDefinition (const std::string &name, std::vector< std::string > components, class EntityStore *entityStore)
 Create a simple entity definition with the given name and list of components.
 
 ENABLE_ENUM_FLAGS (EntityFind)
 
constexpr size_t hash (const ShapeDefinition &definition, size_t hashValue=Cogs::hash())
 
COGSCORE_DLL_API void tesselate (const glm::vec3 *contours, const size_t count, const size_t stride, std::vector< uint32_t > &triangleIndexes, uint32_t base=0)
 
COGSCORE_DLL_API std::vector< int32_t > tesselatePolygons (std::vector< int32_t > &inputIndexes, Mesh *mesh)
 
COGSCORE_DLL_API void reindex (const std::vector< int32_t > &inputIndexes, Mesh *mesh, bool isLine)
 
bool intersectMesh (std::vector< RayIntersectionHit > &hits, std::vector< FrustumPlanes > &scratch, const glm::mat4 &localPickMatrix, const Mesh &mesh, uint32_t startIndex=0, uint32_t vertexCount=-1, uint32_t subMeshIndex=-1)
 
COGSCORE_DLL_API bool frustumClassifyVertex (FrustumPlanes *dstPtr, const glm::mat4 &matrix, const glm::vec3 *positions, const size_t count)
 
size_t getAllocatedBytes (const Memory::Allocator *allocator)
 
size_t getAllocationCount (const Memory::Allocator *allocator)
 
size_t getPeakBytes (const Memory::Allocator *allocator)
 
size_t getPeakCount (const Memory::Allocator *allocator)
 
COGSCORE_DLL_API MaterialInstanceHandle getDefaultMaterialInstance (Context *context)
 
COGSCORE_DLL_API void drawUnitWireBox (RenderTaskContext *taskContext, DrawContext *drawContext, const RenderItem *item, const glm::mat4 &M, unsigned color)
 
COGSCORE_DLL_API void drawOneOneWireBox (RenderTaskContext *taskContext, DrawContext *drawContext, const RenderItem *item, const glm::mat4 &M, unsigned color)
 
COGSCORE_DLL_API void drawCoordSys (RenderTaskContext *taskContext, DrawContext *drawContext, const RenderItem *item, const glm::mat4 &M, bool overlay=false)
 
size_t getCode (EffectDescription &desc)
 
void changeSuffix (std::string &dst, const std::string &from, const std::string &to)
 
void initializeEngineBuffers (IBuffers *buffers, ICapabilities *capabilites, EngineBuffers &engineBuffers)
 
void COGSCORE_DLL_API updateEngineBuffers (RenderTaskContext *context, const RenderTarget *renderTarget, const CameraData *viewportData, const std::array< glm::vec4, 6 > *clipEquations)
 
void COGSCORE_DLL_API updateViewportBuffer (RenderTaskContext *context, BufferHandle &sceneBufferHandle, BufferHandle &viewBufferHandle, const RenderTarget *renderTarget, const CameraData *viewportData, const std::array< glm::vec4, 6 > *clipEquations)
 
 ENABLE_ENUM_FLAGS (EnginePermutationFlags)
 
void aboutCogs (class Context *, bool *show)
 
void showEntityDefinition (SceneDefinition &scene, const SceneEntityDefinition &definition)
 
void assetInspector (Context *context)
 
void assetInstanceInspector (Context *context)
 
void entityInspector (class Context *context, bool *show)
 
void showEntities (Context *context, std::span< const EntityPtr > entities, std::string_view entityNamePattern, std::string_view componentNamePattern)
 
void COGSCORE_DLL_API showCollapsableEntityInspector (class Context *context, const ComponentModel::Entity *entity, std::string_view entityNamePattern, std::string_view componentNamePattern, bool showBorder=true)
 
void COGSCORE_DLL_API showEntityInspector (Context *context, const ComponentModel::Entity *entity, std::string_view entityNamePattern, std::string_view componentNamePattern, bool showBorder=true)
 
void COGSCORE_DLL_API showComponentInspector (Context *context, ComponentModel::Component *component, std::string_view entityNamePattern, std::string_view componentNamePattern, bool showBorder=true)
 
void COGSCORE_DLL_API showFieldInspector (Context *context, ComponentModel::Component *component, FieldId fieldId, std::string_view entityNamePattern, std::string_view componentNamePattern, bool showBorder=true)
 
void gammaDebugger (class Context *, bool *show)
 
void guiBegin (const std::string &title, bool *show)
 
void guiEnd ()
 
std::string getUniqueHeader (const std::string &header)
 
void appendBytesize (std::string &out, size_t byteSize)
 
bool containsInvariantCase (std::string_view str, std::string_view substr)
 
bool findHierarchyWithMatch (const Cogs::ComponentModel::Entity &entity, std::string_view entityNamePattern, std::string_view componentNamePattern)
 
COGSCORE_DLL_API void showTexture (const Context *context, class Renderer *renderer, Texture *texture, bool showTitle=false)
 
COGSCORE_DLL_API void showRenderTexture (const Context *context, class Renderer *renderer, const struct RenderTexture *texture, bool showTitle=false)
 
COGSCORE_DLL_API bool showMatrix (const std::string &header, glm::mat4 &m)
 
template<typename T >
bool showEnum (const std::string &header, T &currentItem)
 Show enumerator with edit option.
 
template<typename T >
bool showArray1D (const std::string &header, std::span< T > array)
 
template<typename T >
bool showArray2D (const std::string &header, std::span< T > array)
 
template<typename T >
bool showArray3D (const std::string &header, std::span< T > array)
 
template<typename T >
bool showArray4D (const std::string &header, std::span< T > array)
 
COGSCORE_DLL_API bool showArray3D (const std::string &header, std::span< glm::vec3 > array)
 
COGSCORE_DLL_API void showMesh (const Context *context, Mesh *mesh, const std::string &header)
 
COGSCORE_DLL_API void showMaterialOptions (const Context *context, MaterialOptions *options, const std::string &header)
 
COGSCORE_DLL_API void showMaterialVariants (MaterialInstance *material)
 
COGSCORE_DLL_API void showMaterialProperties (MaterialInstance *material)
 
COGSCORE_DLL_API void showMaterialInstance (const Context *context, struct MaterialInstance *material, const std::string &header)
 
COGSCORE_DLL_API void showModel (const Context *context, Model *model, const std::string &header)
 
void assetInspector (class Context *context, bool *show)
 
void assetQueueInspector (class Context *context, bool *show)
 
void boundsInspector (class Context *context, bool *show)
 
void fontInspector (class Context *context, bool *show)
 
void inputInspector (class Context *context, bool *show)
 
void materialInspector (class Context *context, bool *show)
 
void materialInstanceInspector (class Context *context, bool *show)
 
void meshInspector (class Context *context, bool *show)
 
void bufferInspector (class Context *context, bool *show)
 
void engineInspector (class Context *context, bool *show)
 
void modelInspector (class Context *context, bool *show)
 
void renderingStatsInspector (class Context *context, bool *show)
 
void pipelineInspector (class Context *context, bool *show)
 
void permutationInspector (class Context *context, bool *show)
 
void profileInspector (class Context *context, bool *showProfiler)
 
void resourceStoreInspector (class Context *context, bool *show)
 
void scriptConsole (class Context *context, bool *show)
 
void scriptInspector (class Context *context, bool *show)
 
void shadowMapInspector (class Context *context, bool *show)
 
void textureInspector (class Context *context, bool *show)
 
COGSCORE_DLL_API void variableInspector (class Context *context, bool *show)
 
void taskManagerInspector (Context *context, bool *show)
 
int inputCallback (ImGuiInputTextCallbackData *)
 
RenderTaskContext getRenderTaskContext (Renderer *renderer)
 
DrawContext getDrawContext (RenderTaskContext *renderContext)
 
 ENABLE_ENUM_FLAGS (RenderItemFlags)
 
 ENABLE_ENUM_FLAGS (StateChangeFlags)
 
 ENABLE_ENUM_FLAGS (BucketMask)
 
bool hasBucket (BucketMask bucketMask, BucketType bucket)
 
bool evaluateCondition (Context *context, const StringView &condition, const RenderPipelineDefinition &pipelineDefinition, const std::vector< ParsedValue > &attributes)
 
void evaluateTaskDependencies (std::list< RenderTask * > tasks, const RenderTaskResources &globalResources, RenderPipeline &pipeline)
 
bool addVariable (ExpressionContext *expressionContext, StringView name, const ParsedValue &p)
 
RenderBuffercreateRenderBuffer (RenderResources *renderResources, const std::string &resourceName, const RenderResourceDefinition &r, ExpressionContext *expressionContext)
 
RenderTexturecreateRenderTexture (RenderTaskContext *renderContext, RenderPipeline &pipeline, RenderTaskResources &pipelineResources, const std::string &resourceName, const std::string &prefix, const RenderResourceDefinition &r, ExpressionContext *expressionContext)
 
bool handleResourceAlias (const RenderResourceDefinition &r, const std::string &resourceName, const std::string &prefix, RenderTaskResources &pipelineResources)
 
bool createPipelineRecursive (Cogs::Core::RenderTaskContext *renderContext, const Cogs::Core::RenderPipelineDefinition &pipelineDefinition, Cogs::Core::RenderTaskResources &pipelineResources, Cogs::Core::RenderPipeline &pipeline, const Cogs::Core::PipelineOptions &options, Cogs::Core::ExpressionContext *expressionContext, const std::vector< ParsedValue > &attributes, const std::string &prefix, const std::string &prefixOuter)
 
size_t pipelineHash (RenderTaskContext *renderContext, const RenderPipeline &pipeline)
 
bool createPipeline (RenderTaskContext *renderContext, const RenderPipelineDefinition &pipelineDefinition, RenderTaskResources &pipelineResources, RenderPipeline &pipeline, const StringView &path, const CameraData *pushCameraData, const PipelineOptions &options=PipelineOptions(), const std::string &prefix="")
 
void releasePipeline (RenderTaskContext *renderContext, RenderPipeline &pipeline)
 
bool isPipelineFresh (RenderTaskContext *renderContext, const RenderPipeline &pipeline)
 
 ENABLE_ENUM_FLAGS (RenderResourceFlags)
 
template<typename Handle , typename Resource >
ResourcecreateGpuResource (const Handle &handle, Collections::Pool< Resource > &resources, RenderResources *)
 
template<typename RenderResourceType >
RenderResourcereleaseGpuResource (ResourceBase *resource, Renderer *renderer)
 
void applyMaterialProperties (const DrawContext *drawContext, const Material *material, const ConstantBufferBindingHandle &bufferBinding, const BufferHandle &constantBuffer)
 
COGSCORE_DLL_API void updateSceneBindings (const DrawContext *drawContext, const CameraData *cameraData, const EffectBinding *bindings)
 
COGSCORE_DLL_API void updateSceneBindings (const RenderTaskContext *taskContext, const EffectBinding *bindings)
 
COGSCORE_DLL_API void updateEnvironmentBindings (const DrawContext *drawContext, const EffectBinding *bindings)
 
COGSCORE_DLL_API void updateMaterialBindings (const DrawContext *drawContext, const RenderMaterialInstance *renderMaterialInstance, const EffectBinding *bindings, bool perInstance)
 
COGSCORE_DLL_API void applyMaterialPermutation (RenderTaskContext *taskContext, const DrawContext *drawContext, const EffectBinding *bindings, const RenderMaterialInstance *renderMaterialInstance)
 
COGSCORE_DLL_API void applyMaterialInstance (const DrawContext *drawContext, const EffectBinding *bindings, const RenderMaterialInstance *renderMaterialInstance)
 
COGSCORE_DLL_API void applyMaterialPerObject (const DrawContext *drawContext, const RenderMaterialInstance *renderMaterialInstance, const RenderItem &renderItem)
 
size_t populateObjectBuffer (const DrawContext *drawContext, const RenderItem *items, size_t o, size_t n)
 
void applyMaterialPerObjectBatched (const DrawContext *drawContext, const RenderMaterialInstance *renderMaterialInstance, const RenderItem &renderItem, size_t o)
 
const MaterialInstancegetControllingInstance (const MaterialInstance *instance, MaterialFlags::EMaterialFlags overrideFlag)
 
const MaterialInstancegetControllingInstance (const MaterialInstance *instance, MaterialFlags overrideFlag)
 
RenderPassOptions initRenderPassOptions (const RenderItem &renderBlock, const CameraData &camData)
 
uint16_t getRasterizerState (Renderer *renderer, const RenderItem &renderBlock, const RenderPassOptions &passOptions, bool flipWindingOrder, bool forceBlockWinding)
 
 ENABLE_ENUM_FLAGS (SortFlags)
 
void getTransparencyState (RenderStates &, const MaterialInstance *materialInstance, RenderItem &renderItem)
 
RenderItemFlags getMaterialFlags (const MaterialInstance *materialInstance)
 
template<typename ResourceType >
Collections::Pool< ResourceType > & getPool ()
 
template<typename TaskType >
TaskType * createTask (RenderTaskContext *renderContext, bool initialize=true)
 
void freeTask (RenderTask *task, RenderTaskContext *renderContext)
 
void setProcessTaskEffectParameter (RenderTaskContext *renderContext, std::list< std::unique_ptr< SubContext > > &subContexts, ExpressionContext *expressionContext, ProcessTask *task, const ParsedValue &parameter)
 
RenderTaskParameters parseParameters (RenderTaskContext *renderContext, const RenderTaskDefinition &taskDefinition, const PipelineOptions &options)
 
COGSCORE_DLL_API RenderTaskcreateRenderTask (RenderTaskContext *taskContext, const RenderTaskDefinition &taskDefinition, std::list< std::unique_ptr< Cogs::Core::SubContext > > &subContexts, ExpressionContext *expressionContext, const PipelineOptions &options=PipelineOptions())
 
void destroyRenderTask (RenderTaskContext *renderContext, RenderTask *task)
 
void COGSCORE_DLL_API addTaskType (const StringView &key, TaskCreator creator, TaskDestroyer destroyer)
 
void freeTasks (std::vector< RenderTask * > &tasks, RenderTaskContext *renderContext)
 
std::vector< std::string > getResourceManifest (class Context *context)
 
void getCharacterQuad (const Font::Character *chardata, int pw, int ph, int charIndex, float *xPos, float *yPos, Font::BakedCharacter *q, int openGLFill, int alignToInteger=0)
 
void COGSCORE_DLL_API enforcePropertyFlags (const MaterialProperty &prop, MaterialPropertyFlags flags, void *data)
 
bool applyConstantBuffers (class Context *context, const MaterialProperties &materialProperties, ConstantBuffers &constantBuffers)
 
COGSCORE_DLL_API bool applyMaterialProperties (class Context *context, const MaterialProperties &materialProperties, Material &material)
 
bool applyMaterialDefinition (class Context *context, const MaterialDefinition &materialDefinition, Material &material)
 
 ENABLE_ENUM_FLAGS (MaterialDefinitionFlags)
 
void applyMaterialOption (MaterialOptions &options, const StringView &key, const StringView &value)
 
 ENABLE_ENUM_FLAGS (MaterialPropertyFlags)
 
bool isLine (PrimitiveType::EPrimitiveType primitiveType)
 Check if the given primitive type represents lines.
 
Cogs::Geometry::BoundingBox COGSCORE_DLL_API calculateBounds (Mesh *mesh)
 Calculate a bounding box for the given mesh.
 
Cogs::Geometry::BoundingBox COGSCORE_DLL_API calculateBounds (Mesh *mesh, uint32_t startIndex, uint32_t vertexCount)
 
void COGSCORE_DLL_API generateMeshNormals (Mesh *mesh)
 Generate normals.
 
void COGSCORE_DLL_API generateMeshTangents (Mesh *mesh)
 Generate tangents.
 
std::span< const glm::vec3 > COGSCORE_DLL_API extractSemanticStreamVec3 (Memory::MemoryBuffer &backing, MeshHandle mesh, const Cogs::ElementSemantic semantic, size_t semanticIndex=0)
 
std::span< const uint32_t > COGSCORE_DLL_API extractIndexStreamUint32 (Memory::MemoryBuffer &backing, MeshHandle mesh)
 
 ENABLE_ENUM_FLAGS (ResourceFlags)
 
 ENABLE_ENUM_FLAGS (ResourceLoadFlags)
 
 ENABLE_ENUM_FLAGS (TextureLoadFlags)
 
 ENABLE_DERIVED_FLAGS (TextureLoadFlags, ResourceLoadFlags)
 
 ENABLE_ENUM_FLAGS (ModelLoadFlags)
 
 ENABLE_DERIVED_FLAGS (ModelLoadFlags, ResourceLoadFlags)
 
 ENABLE_ENUM_FLAGS (AssetLoadFlags)
 
 ENABLE_DERIVED_FLAGS (AssetLoadFlags, ResourceLoadFlags)
 
void registerResourceFlagTypes ()
 
template<typename T >
bool HandleIsValid (const ResourceHandle_t< T > &handle)
 Check if the given resource is valid, that is not equal to NoHandle or InvalidHandle.
 
bool HandleIsValid (const ResourceHandleBase &handle)
 
constexpr ResourceTypes getResourceType (const ResourceBase *)
 
constexpr ResourceTypes getResourceType (const Asset *)
 
constexpr ResourceTypes getResourceType (const Model *)
 
constexpr ResourceTypes getResourceType (const Texture *)
 
constexpr ResourceTypes getResourceType (const Effect *)
 
constexpr ResourceTypes getResourceType (const Material *)
 
constexpr ResourceTypes getResourceType (const MaterialInstance *)
 
constexpr ResourceTypes getResourceType (const BufferResource *)
 
constexpr ResourceTypes getResourceType (const Mesh *)
 
constexpr ResourceTypes getResourceType (const Font *)
 
 ENABLE_ENUM_FLAGS (ResourceStoreFlags)
 
bool buildEffectWebGPU (class Context *context, std::vector< std::pair< std::string, std::string > > &definitions, MaterialDefinition &materialDefinition, const EnginePermutation &permutation, const uint32_t multiViewCount)
 
bool buildEffectES3 (class Context *context, std::vector< std::pair< std::string, std::string > > &definitions, MaterialDefinition &materialPermutation, const EnginePermutation &permutation, const uint32_t multiViewCount)
 
bool buildEffect (class Context *context, std::vector< std::pair< std::string, std::string > > &definitions, const MaterialDefinition &materialPermutation, const EnginePermutation &permutation)
 
void updateSkeletonPose (Skeleton &skeleton)
 
template<typename Element >
TextureFormat getFormat ()
 
template<>
TextureFormat getFormat< glm::u8vec4 > ()
 
template<>
TextureFormat getFormat< glm::vec3 > ()
 
template<>
TextureFormat getFormat< glm::vec4 > ()
 
 ENABLE_ENUM_FLAGS (ShaderVarientFlags)
 
float getDepth (class Context *context, const EntityId id, const glm::vec3 position)
 
 ENABLE_ENUM_FLAGS (PickingFlags)
 
template<typename ComponentType , typename MemberType , class Recurse >
void applyRecursiveFieldChange (ComponentModel::Entity *entity, MemberType ComponentType::*member, MemberType value, Recurse recurse)
 
 ENABLE_ENUM_FLAGS (ScriptFlags)
 
void readTemplates (Context *context, const Value &jsonTemplates, AssetLoadFlags)
 
bool readExtensions (Context *, const Value &jsonExtensions, AssetLoadFlags)
 
bool readImports (Context *context, const Value &jsonImports, AssetLoadFlags flags, ComponentModel::Entity *root)
 
bool COGSCORE_DLL_API readAsset (class Context *context, StringView fileName, AssetLoadFlags flags=AssetLoadFlags::None, ComponentModel::Entity *root=nullptr)
 
bool COGSCORE_DLL_API readAssetFromString (class Context *context, StringView contents, AssetLoadFlags flags=AssetLoadFlags::None, ComponentModel::Entity *root=nullptr)
 
bool COGSCORE_DLL_API readAssetDefinitionFromFile (class Context *context, StringView fileName, AssetDefinition &assetDefinition, bool compressed=false)
 
bool readAssetDefinitionFromFileContents (class Context *context, std::unique_ptr< FileContents > contents, AssetDefinition &assetDefinition, bool compressed=false)
 
 ENABLE_ENUM_FLAGS (AssetWriteFlags)
 
bool COGSCORE_DLL_API writeAsset (class Context *context, StringView fileName, AssetWriteFlags flags=AssetWriteFlags::None, ComponentModel::Entity *root=nullptr)
 
bool COGSCORE_DLL_API writeAsset (class Context *context, const char *path, AssetHandle asset, AssetWriteFlags writeFlags)
 
COGSCORE_DLL_API EntityPtr createEntity (EntityCreationContext &entityContext, const SceneEntityDefinition &definition)
 
COGSCORE_DLL_API ComponentModel::EntitycreateEntity (Context *context, SceneDefinition &scene, const SceneEntityDefinition &definition, Cogs::ComponentModel::Entity *parent=nullptr)
 
void readMaterialInstanceField (Context *context, const Value &value, FieldValue &fieldValue, ExpressionContext *ec)
 
bool COGSCORE_DLL_API readFieldValue (Context *context, const Value &jsonValue, const Reflection::Type &type, const StringView &fieldName, std::vector< FieldValue > &fieldValues, ExpressionContext *ec)
 
bool COGSCORE_DLL_API readFieldValues (Context *context, const Value &jsonValue, const StringView &componentName, std::vector< FieldValue > &fieldValues, ExpressionContext *ec)
 
void COGSCORE_DLL_API readEntityDefaults (Context *context, const Value &value, std::vector< FieldValue > &defaultValues, ExpressionContext *ec)
 
void COGSCORE_DLL_API readEntityDefinition (EntityStore *store, const StringView &name, const Value &value)
 
bool COGSCORE_DLL_API readEntityDefinition (EntityStore *store, const StringView &name, const Value &value, struct EntityDefinition &definition)
 
void COGSCORE_DLL_API readEntityDefinition (const StringView &content, EntityStore *store)
 Read an entity definition from the JSON string given in content, and add it to the store.
 
template<typename T , typename AllocatorType >
void writeVectorVec (Value &object, const StringView &key, const std::vector< T > &values, const std::vector< T > defaultValue, AllocatorType &a)
 
template<typename T , typename AllocatorType >
void writeVectorInt (Value &object, const StringView &key, const std::vector< T > &values, const std::vector< T > defaultValue, AllocatorType &a)
 
template<typename T , typename AllocatorType >
void writeVectorDouble (Value &object, const StringView &key, const std::vector< T > &values, const std::vector< T > defaultValue, AllocatorType &a)
 
template<typename T , typename AllocatorType >
void writeVec (Value &object, const StringView &key, T value, T defaultValue, AllocatorType &a)
 
template<typename AllocatorType >
void writeMat (Value &object, const StringView &key, const glm::mat4 &value, const glm::mat4 &defaultValue, AllocatorType &a)
 
template<typename AllocatorType >
void writeDouble (Value &object, const StringView &key, const double value, const double defaultValue, AllocatorType &a)
 
template<typename T , typename AllocatorType >
void writeInteger (Value &object, const StringView &key, T value, T defaultValue, AllocatorType &a)
 
template<typename AllocatorType >
void writeBool (Value &object, const StringView &key, bool value, bool defaultValue, AllocatorType &a)
 
template<typename AllocatorType >
void writeString (Value &object, const StringView &key, StringView value, StringView defaultValue, AllocatorType &a)
 
std::string getUniqueMaterialName (Context *context)
 
std::string getResourceName (Context *context, ResourceHandleBase *fieldValue, std::unordered_set< ResourceHandleBase > *resources)
 
void COGSCORE_DLL_API writeEntity (Context *context, ComponentModel::Entity *entity, rapidjson::Value &object, rapidjson::Document &d, SerializationContext *sc=nullptr, const AssetWriteFlags flags=AssetWriteFlags::None)
 Serialize entity adding entity to the given parent 'object'.
 
rapidjson::Document COGSCORE_DLL_API writeEntity (Context *context, ComponentModel::Entity *entity, const AssetWriteFlags flags=AssetWriteFlags::None)
 Serialize entity to new JSON document.
 
 ENABLE_ENUM_FLAGS (JsonParseFlags)
 
COGSCORE_DLL_API Document parseJson (const StringView &content, JsonParseFlags flags)
 
COGSCORE_DLL_API Document parseJson (class Context *context, const StringView &fileName, JsonParseFlags flags=JsonParseFlags::None)
 
COGSCORE_DLL_API Document parseJson (class Context *context, std::unique_ptr< FileContents > contents, JsonParseFlags flags=JsonParseFlags::None)
 
Cogs::StringView toKey (const Value &v)
 
Cogs::StringView toView (const Value &v)
 
std::string toString (const Value &v)
 
bool readMaterialProperties (Context *context, const Value &jsonValue, MaterialProperties &materialProperties, bool isShared)
 
bool readMaterialVariants (Context *context, const Value &value, std::vector< ShaderVariantDefinition > &variants, bool isShared=false)
 
bool parseMaterial (class Context *context, const StringView &path, MaterialDefinition &definition)
 
bool inheritMaterialVariants (std::vector< ShaderVariantDefinition > &definitionVariants, std::span< const ShaderVariantDefinition > sourceVariants, const Cogs::StringView &definitionName, const Cogs::StringView &sourceName, bool errorOnExisting=true)
 
bool loadCogsBin1 (Context *context, const ModelLoadInfo &loadInfo, std::unique_ptr< FileContents > contents)
 
bool loadCogsBin3 (Context *context, const ModelLoadInfo &loadInfo, std::unique_ptr< FileContents > contents)
 
 ENABLE_ENUM_FLAGS (WriteModelFlags)
 
bool writeCogsBin3Model (Context *context, uint32_t &numVertes, uint32_t &numIndexes, const StringView &fileName, const struct Model *model, WriteModelSettings *settings)
 
bool writeCogsBin3Models (Context *context, uint32_t &numVertes, uint32_t &numIndexes, const StringView &fileName, ComponentModel::Entity **entity, size_t N, WriteModelFlags flags=WriteModelFlags::COMPRESS_ZSTD|WriteModelFlags::COMPRESS_MAX)
 
COGSCORE_DLL_API bool writeModel (Context *context, uint32_t &numVertes, uint32_t &numIndexes, const StringView &fileName, ComponentModel::Entity *entity, WriteModelFlags flags=WriteModelFlags::COMPRESS_ZSTD|WriteModelFlags::COMPRESS_MAX)
 
COGSCORE_DLL_API bool writeModel (Context *context, uint32_t &numVertes, uint32_t &numIndexes, const StringView &fileName, const struct Model *model, WriteModelSettings *settings)
 
COGSCORE_DLL_API bool writeModels (Context *context, uint32_t &numVertes, uint32_t &numIndexes, const StringView &fileName, ComponentModel::Entity **entity, size_t N, WriteModelFlags flags=WriteModelFlags::COMPRESS_ZSTD|WriteModelFlags::COMPRESS_MAX)
 
COGSCORE_DLL_API bool writeModel (Context *context, const StringView &fileName, ComponentModel::Entity *entity, WriteModelFlags flags=WriteModelFlags::COMPRESS_ZSTD|WriteModelFlags::COMPRESS_MAX)
 
template<typename T >
readValue (const Value &value, T defaultValue, ExpressionContext *ev)
 
template<typename T >
readValue (const Value &value, ExpressionContext *ev)
 
uint32_t readArray (const Value &value, float *dst, unsigned N, ExpressionContext *ev)
 
template<int S, typename T , glm::precision P, template< int, typename, glm::precision > class vecType>
uint32_t readArray (const Value &value, vecType< S, T, P > &result, ExpressionContext *ev)
 
RenderResourceType parseResourceType (const std::string &str)
 
void parseOptions (const Value &jsonOptions, RenderPipelineDefinition &definition)
 
void parseValue (const StringView &key, const Value &value, ParsedValue &v)
 
void parseResource (const Value &value, RenderResourceDefinition &resource, const std::string &)
 
bool parseResources (const Value &jsonResources, RenderPipelineDefinition &definition, const std::string &condition="")
 
void parseSlots (const Value &value, std::vector< RenderTaskSlot > &slots)
 
void parseTask (const Value &jsonTask, RenderTaskDefinition &task, const std::string &)
 
bool parseTasks (const Value &jsonTasks, RenderPipelineDefinition &definition, const std::string &condition="")
 
bool parseDefinition (Context *context, const Value &jsonDefinition, RenderPipelineDefinition &definition)
 
RenderPipelineDefinition parsePipeline (class Context *context, const StringView &resource, bool isContent=false)
 
StringView readMesh (Context *context, ResourceDefinition &definition, const Value &jsonResource)
 
void readAssetDefinition (ReaderContext *, const Value &jsonResource, ResourceDefinition &assetDefinition)
 
void readModelDefinition (ReaderContext *, const Value &jsonResource, ResourceDefinition &definition)
 
void readTextureDefinition (ReaderContext *, const Value &jsonResource, ResourceDefinition &definition)
 
void parseMaterialInstanceProperty (const Value &value, const StringView &key, const Material *material, FieldValue &propertyValue, ExpressionContext *ec)
 
void readMaterialInstanceDefinition (ReaderContext *rc, const Value &value, ResourceDefinition &resourceDefinition)
 
void readResource (Context *context, const StringView &name, const Value &jsonResource)
 
void readResourceDefinition (Context *context, const StringView &name, const Value &jsonResource, ResourceDefinition &definition)
 
ReaderExtensiongetExtensionReader (size_t code)
 
void COGSCORE_DLL_API registerExtensionReader (Context *context, const StringView &resourceType, const Reflection::Type &handleType, ReaderExtension extension)
 
void readResources (Context *context, const Value &jsonResources, int flags=0)
 
void readResourceDefinitions (Context *context, const Value &jsonResources, int flags, AssetDefinition &asset)
 
void COGSCORE_DLL_API readScene (class Context *context, const Value &jsonScene, AssetLoadFlags flags, ComponentModel::Entity *root)
 Parse JSON description of Entities in Cogs Scene file and create Entities defined in scene.
 
void COGSCORE_DLL_API readSceneDefinition (class Context *context, const Value &jsonScene, AssetLoadFlags flags, AssetDefinition &asset)
 Parse JSON description of Entities in Cogs Scene. Store contents in asset param.
 
void COGSCORE_DLL_API readSceneEntityDefinition (Context *context, const Value &jsonEntity, AssetDefinition &asset, SceneDefinition &sceneDef, uint32_t entityId, struct ExpressionContext *ev)
 
void COGSCORE_DLL_API readVariables (Variables &variables, const Value &jsonVariables, const std::string &sectionHeader, bool defaults=false)
 
CPUFeature operator| (CPUFeature lhs, CPUFeature rhs)
 Bitmask convenience operator.
 
CPUFeature & operator|= (CPUFeature &lhs, CPUFeature rhs)
 Bitmask convenience operator.
 
CPUFeature operator& (CPUFeature lhs, CPUFeature rhs)
 Bitmask convenience operator.
 
CPUFeature & operator&= (CPUFeature &lhs, CPUFeature rhs)
 Bitmask convenience operator.
 
 ENABLE_ENUM_FLAGS (TaskFlags)
 
 ENABLE_ENUM_FLAGS (VariableFlags)
 
size_t getMaterialHash (const MaterialComponent &component)
 Creates a hash value from the material properties in the given component.
 
void applyRenderMaterial (const MaterialComponent &component, const MaterialData &data)
 Apply the material instance from the given component to the mesh render component (if found) on the same entity, making mesh rendering use said instance.
 
uint32_t findFirstLodChild (const AssetDefinition &definition, uint32_t firstChild, int32_t targetLevel)
 
void initializeAssetInstance (AssetInstanceData &assetInstance)
 
glm::vec3 euclidean (const glm::vec4 &a)
 
void getLodReference (Context *context, AssetInstanceData &assetInstance, AssetLodReference &lodRef, Entity *ref)
 
bool isOutside (AssetLodReference &lodReference, const Geometry::BoundingBox &bbox)
 
void updateLodGroupDesiredLevel (AssetInstanceData &instance, AssetLodReference &lodReference, EntityInstanceData &lodInstance, uint32_t lodDepth, const float tolerance)
 
void calculateModelCost (Context *, ModelInstanceData &modelData, Model *model)
 
void updateAssetDesiredLevels (Context *context, AssetInstanceData &assetInstance, uint32_t lodDepth, uint32_t maxIterations)
 
void updateEntityDesiredLevels (Context *context, AssetInstanceData &instance, AssetLodReference &lodReference, EntityInstanceData &entityInstance, uint32_t lodDepth, const float tolerance)
 
void clearEntity (Context *context, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance)
 
bool checkEntity (Context *context, AssetLodReference &lodReference, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance)
 
bool spawnEntity (Context *context, AssetLodReference &lodReference, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance, EntityParentMode parentMode)
 
bool spawnLodGroup (Context *context, AssetLodReference &lodReference, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance, EntityParentMode)
 
bool spawnAsset (Context *context, AssetLodReference &lodReference, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance)
 
bool spawnModel (Context *context, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance, EntityParentMode parentMode)
 
void updateEntity (Context *context, AssetLodReference &lodReference, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance, EntityInstanceData *parentInstance)
 
void dispatchMessages (Context *context, AssetInstanceData &assetInstance)
 
void processInFlightRequests (Context *context, AssetSystemData *systemData)
 
size_t processPendingRequests (Context *context, AssetSystemData *systemData, ModelManager *modelManager, AssetSystemVector< AssetModelRequest * > &pendingRequests, AssetSystemVector< AssetModelRequest * > &inFlightRequests, const size_t maxInFlight, const size_t maxProcessed)
 
void pullCameraMatrices (Context *context, AssetSystemData *systemData)
 
void updateRenderPropertiesRecurse (const AssetInstanceData &instanceData, Entity *entity)
 
void updateInstancedModelChildEntityRenderProperties (Context *context, AssetInstanceData &assetInstance, Entity &entity)
 
void updateAssetInstanceRenderProperties (Context *context, AssetInstanceData &assetInstance)
 
void updateEntityInstanceRenderProperties (Context *context, AssetInstanceData &assetInstance, EntityInstanceData &entityInstance)
 
template<typename... Args>
void * getDispatcherArg (Args... args)
 
void * getDispatcherArg ()
 
template<typename Collection , typename... Args>
void dispatch (const Collection &receivers, size_t messageId, Args... args)
 
template<typename Collection , typename... Args>
void dispatchRef (const Collection &receivers, size_t messageId, Args... args)
 
void calculateLevelOfDetail (Context *context, const LodComponent &component, LodData &lodData, const glm::vec3 &cameraCenter, const CameraData &cameraData, bool cameraChanged)
 
void forwardRenderProperties (SceneComponent *sceneComp, const RenderComponent *masterRenderComp)
 
MaterialInstanceHandle getMaterialInstance (Context *context)
 
void updateMasterMaterial (Context *, ModelData &modelData, MaterialInstanceHandle masterMaterial)
 
void initializeTypes ()
 
void cleanupTypes ()
 
void readSize_t (ExpressionValue< size_t > &value, ExpressionContext *ev, const std::string &prefix, const ParsedValue &parsedValue)
 
FrustumPlanes operator| (FrustumPlanes lhs, FrustumPlanes rhs)
 Bitmask convenience operator.
 
FrustumPlanes & operator|= (FrustumPlanes &lhs, FrustumPlanes rhs)
 Bitmask convenience operator.
 
FrustumPlanes operator& (FrustumPlanes lhs, FrustumPlanes rhs)
 Bitmask convenience operator.
 
FrustumPlanes & operator&= (FrustumPlanes &lhs, FrustumPlanes rhs)
 Bitmask convenience operator.
 
COGSCORE_DLL_API FrustumPlanes frustumClassifyBoundingBox (const glm::mat4 &localToClip, const glm::vec3 &min, const glm::vec3 &max)
 
COGSCORE_DLL_API FrustumPlanes frustumClassifyBoundingBox (const glm::mat4 &localToClip, const glm::vec3 &min, const glm::vec3 &max, const float discardThresholdSqr, const float keepThreshold)
 
glm::vec3 euclidean (const glm::vec4 h)
 
glm::quat getRotation (glm::vec3 src, glm::vec3 dest)
 
bool isCharacter (char c)
 
bool isNumber (char c)
 
int parseEnumFlags (const char *&current, const char *end, const Reflection::Type &type, int defaultValue)
 
template<typename T , typename Func >
void parseValues (T *values, const TokenStream &tokens, size_t expected, Func f)
 
template<typename T , typename Func >
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, T *values, const TokenStream &tokens, size_t expected, Func f)
 
 ENABLE_ENUM_FLAGS (ParsedValueTextureFlags)
 
bool matchChars (const char c, const StringView &chars)
 
void COGSCORE_DLL_API split (const StringView &str, const StringView &splits, TokenStream &tokens)
 
void COGSCORE_DLL_API split (const StringView &str, const StringView &splits, const int grouper, TokenStream &tokens)
 
TokenStream COGSCORE_DLL_API split (const StringView &str, const StringView &splits)
 
TokenStream tokenize (const StringView &valueStr)
 
void tokenize (const StringView &valueStr, TokenStream &tokens)
 
void COGSCORE_DLL_API parseStringValue (const StringView &value, ParsedValue &v)
 
Cogs::TextureFormat COGSCORE_DLL_API parseTextureFormat (const StringView &str, Cogs::TextureFormat defaultFormat=TextureFormat::R8G8B8A8_UNORM_SRGB)
 
double parseDouble (const StringView &token, double defaultValue=0)
 
float parseFloat (const StringView &token, float defaultValue=0)
 
int32_t parseInt (const StringView &token, int32_t defaultValue=0)
 
uint32_t parseUInt (const StringView &token, uint32_t defaultValue=0)
 
bool parseBool (const StringView &token, bool defaultValue=false)
 
bool parseBool_ (bool &rv, const StringView &token)
 Parse a bool putting return value in rv and returning whether or not parsing was successful.
 
bool parseInt_ (int32_t &rv, const StringView &token)
 Parse an int putting return value in rv and returning whether or not parsing was successful.
 
uint64_t COGSCORE_DLL_API parseISO8601 (const StringView &iso8601)
 Parse ISO 8601 timestamps.
 
uint64_t COGSCORE_DLL_API parseISO8601 (const StringView &iso8601, int &tzOffset)
 
int COGSCORE_DLL_API parseEnum (const StringView &token, const Reflection::Type &type, int defaultValue)
 
int COGSCORE_DLL_API parseEnumFlags (const StringView &token, const Reflection::Type &type, int defaultValue)
 
template<typename T >
parseEnum (const StringView &token, T defaultValue=T())
 
template<typename T >
parseEnumFlags (const StringView &token, T defaultValue=T())
 
void parseQueryString (std::vector< ParsedValue > &attributes, StringView query)
 
void parseValues (float *values, const TokenStream &tokens, size_t expected)
 
void parseValues (double *values, const TokenStream &tokens, size_t expected)
 
void parseValues (int *values, const TokenStream &tokens, size_t expected)
 
void parseValues (uint32_t *values, const TokenStream &tokens, size_t expected)
 
void parseValues (bool *values, const TokenStream &tokens, size_t expected)
 
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, float *values, const TokenStream &tokens, size_t expected)
 
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, double *values, const TokenStream &tokens, size_t expected)
 
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, int *values, const TokenStream &tokens, size_t expected)
 
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, uint32_t *values, const TokenStream &tokens, size_t expected)
 
void parseValues (std::vector< std::pair< size_t, std::string > > &expressions, bool *values, const TokenStream &tokens, size_t expected)
 
COGSCORE_DLL_API size_t simplexScratchSize (const size_t variableCount, const size_t objectiveCount, const size_t restrictionCount)
 Number of bytes of scratch array required by simplexMaximize.
 
COGSCORE_DLL_API SimplexResult simplexMaximize (Context *context, uintptr_t scratch, double *solutions, const int variableCount, const double *objectives, const int objectiveCount, const double *restrictions, const int restrictionCount, const int maxIterationCount, const bool printSteps=false)
 Find the maximum of a linear programming problem using the simplex method.
 
COGSCORE_DLL_API glm::vec2 localSphereRadiusInScreenSpace (const glm::mat4 &localToClip, const glm::mat4 &clipToLocal, const glm::vec4 &clipPosition, const float localRadius)
 Given a screen space reference position and a local space radius, find the corresponding screen space radii (along screen x and y).
 
COGSCORE_DLL_API float sphereSectorGeometricDistancePredicate (const glm::vec2 screenSpaceRadii, const glm::vec2 viewportSize, const float distancePixelTolerance, const float minSectors, const float maxSectors)
 
COGSCORE_DLL_API float sphereSectorGeometricAreaPredicate (const glm::vec2 screenSpaceRadii, const glm::vec2 viewportSize, const float areaPixelTolerance, const float minSectors, const float maxSectors)
 
COGSCORE_DLL_API void transformVertex3ToVertex4 (Context *context, uint8_t *dst, const size_t dst_stride, const size_t dst_bytes, const glm::mat4 &matrix, const uint8_t *src, const size_t src_stride, const size_t src_bytes, const size_t src_count)
 
void transformVertices (Context *context, std::vector< glm::vec4 > &dst, const glm::mat4 &matrix, const std::vector< glm::vec3 > &src)
 
void transformVertices (Context *context, std::vector< glm::vec4 > &dst, const glm::mat4 &matrix, const std::vector< glm::vec3 > &src, size_t offset, size_t count)
 
void transformVertex3ToVertex4AVX (uint8_t *dst, const size_t dst_stride, const size_t, const glm::mat4 &matrix, const uint8_t *src, const size_t src_stride, const size_t, const size_t src_count)
 
void transformVertex3ToVertex4FastPathAVX (uint8_t *dst, const size_t dst_stride, const size_t, const glm::mat4 &matrix, const uint8_t *src, const size_t src_stride, const size_t, const size_t src_count)
 
void transformVertex3ToVertex4SSE1 (uint8_t *dst, const size_t dst_stride, const size_t dst_bytes, const glm::mat4 &matrix, const uint8_t *src, const size_t src_stride, const size_t src_bytes, const size_t src_count)
 
void transformVertex3ToVertex4FastPathSSE1 (uint8_t *dst, const size_t dst_stride, const size_t dst_bytes, const glm::mat4 &matrix, const uint8_t *src, const size_t src_stride, const size_t src_bytes, const size_t src_count)
 
glm::vec3 project (const CameraData &data, const glm::vec3 &in)
 
float getWorldToScreenScale (Context *, const CameraData &cameraData, const glm::vec3 &worldCenter, float normRadius)
 
template<>
void LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > & > (std::vector< PositionNormalVertex > &arg)
 
template<>
void LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > > (std::vector< PositionNormalVertex > &&arg)
 
template<>
void LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > & > (std::vector< PositionNormalTexVertex > &arg)
 
template<>
void LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > > (std::vector< PositionNormalTexVertex > &&arg)
 
MaterialInstanceHandle createMaterial (Context *context, int colorIndex, PrimitiveType::EPrimitiveType primitiveType)
 
void createLayerModel (Context *context, Model &model, uint32_t parentIndex, const std::string &name, const std::vector< PositionNormalVertex > &vertexBuffer, const std::vector< uint32_t > &indexBuffer, PrimitiveType::EPrimitiveType primitiveType, int colorIndex)
 
Batch readBatch (Context *context, const StringView &path)
 
void runFrames (Context *context, size_t numFrames, bool clear, bool wait)
 
template<typename T >
void runCommand (Batch &, BatchCommand &command, Editor *editor, EntityId id)
 
void COGSCORE_EDITOR_API runBatch (class Context *context, class Editor *editor, const StringView &path)
 
COGSCORE_EDITOR_API void getMeshItems (Context *context, MeshItems &items, EntityPtr entity, uint32_t primitiveTypeMask=~0u)
 
COGSCORE_EDITOR_API void getMeshItems (Context *context, MeshItems &items, Cogs::Core::EntityIds entities, uint32_t primitiveTypeMask=~0u)
 
COGSCORE_EDITOR_API void remapVertices (Context *context, MeshRep &rep, const std::vector< uint32_t > &unique)
 
COGSCORE_EDITOR_API void remapIndices (Context *context, MeshRep &rep, const std::vector< uint32_t > &map)
 
COGSCORE_EDITOR_API void unpackMeshItems (Context *context, std::vector< MeshHandle > &originalMeshes, MeshReps &meshes, MeshItems &items, UnpackOptions options=UnpackOptions())
 
COGSCORE_EDITOR_API void packMeshItems (Context *context, std::vector< MeshHandle > &originalMeshes, MeshReps &meshes, MeshItems &items, bool update=true)
 
COGSCORE_EDITOR_API EntityPtr createNewMeshItems (Context *context, Cogs::ComponentModel::Entity *parent, std::vector< MeshHandle > &originalMeshes, MeshReps &meshes, MeshItems &items)
 
COGSCORE_EDITOR_API EntityPtr createAsSingleMeshItem (Context *context, Cogs::ComponentModel::Entity *parent, std::vector< MeshHandle > &originalMeshes, MeshReps &meshes, MeshItems &items)
 
StringView getOption (const std::vector< ParsedValue > &options, const StringView &key, const StringView &defaultValue="")
 Find and get value of option in vector as a string. Return default if not found.
 
size_t getOption (const std::vector< ParsedValue > &options, const StringView &key, const size_t defaultValue)
 Find and get value of option in vector as size_t. Return default if not found.
 
float getOption (const std::vector< ParsedValue > &options, const StringView &key, const float defaultValue)
 Find and get value of option in vector as float. Return default if not found.
 
bool replaceToken (std::string &str, const std::vector< ParsedValue > &options, const std::string token, const StringView &option, const StringView &direct)
 Check string for the given token. Replace with option string is set else direct value.
 
std::string makeDateString (std::time_t &t, const StringView &fmt)
 
std::string replaceFileMacros (std::string outputName, const std::vector< ParsedValue > &options)
 Replace common macroes for file name generation. I.e.: "A/$Filename" etc.
 
std::string fixInvalidPathChars (const std::string &filename)
 Remove characters that are not valid for filenames lik "<>:/\?" etc.
 
void writeStream (ModelStats &stats, const DataStream *stream)
 
void writeMeshStats (ModelStats &stats, Mesh *mesh)
 
void writeStats (Context *context, ModelStats &model, uint32_t, ComponentModel::Entity *entity)
 
void RemoveEntitiesWithAncestors (Context *context, const EntityIds &entityIds, EntityIds &output)
 
bool canMerge (SceneComponent *sc)
 
template<typename Container >
void copyStream (Mesh *mesh, VertexDataType::EVertexDataType dataType, Container &container)
 
MeshHandle createMesh (Context *context, SceneComponent *sc)
 
void traverse (Context *context, Entity *entity, const std::regex &matchRegex)
 
uint32_t getMeshSignature (const Mesh *mesh)
 
void closeMergeState (Context *context, MergeMeshState &state)
 
void traverseMerge (Context *context, Entity *entity, MergeMeshState &state)
 
void traverseScale (Context *context, Entity *entity, MergeMeshState &state)
 
void gatherMaterials (ComponentModel::Entity *entity, std::unordered_map< EntityId, MaterialInstanceHandle > &materials)
 
EntityshowEntity (EditorState &editor, Entity *entity)
 
 ENABLE_ENUM_FLAGS (KeyboardModifiers)
 
std::shared_ptr< litehtml::elementfindElement (const std::shared_ptr< litehtml::element > &e, const StringView &id)
 
std::string findFont (const StringView &family, int)
 
ImVec4 toImVec4 (const litehtml::web_color &color)
 
ImVec2 toImVec2 (int x, int y)
 
bool hasRadius (const litehtml::border_radiuses &radius)
 
float getBorderWidth (const litehtml::borders &borders)
 
int calculateSegments (float radius)
 
void createRoundedPath (const ImVec2 &a, const ImVec2 &b, const litehtml::border_radiuses &radius, float width=1.0f)
 
ScriptObjectcreateElement (const ScriptContextHandle &scriptContext, litehtml::document *document, const litehtml::element::ptr &found)
 
void createDocument (const ScriptContextHandle &scriptContext, litehtml::document *document, const litehtml::element::ptr &)
 
void dispatchMouseEvent (ScriptContextHandle scriptContext, const litehtml::element::ptr &el, const StringView &eventName, const StringView &attributeName, int x, int y)
 
ScriptContextHandle getScriptContext (Context *context, Entity *entity)
 
ModelPartfindFirst (Model &model)
 
btVector3 toBullet (const glm::vec3 &v)
 
btQuaternion toBullet (const glm::quat &v)
 
void updateMassProperties (RigidBodyData &data, float mass, const glm::vec3 &scale)
 
bool parseCloudJs (Context *, PotreeData *poData, const Cogs::FileContents *data)
 
 ENABLE_ENUM_FLAGS (PotreeCell::Flags)
 
void decodePotreeBin (PotreeDecodeOutData &out, const PotreeDecodeInData &in, const Cogs::FileContents &inData)
 
void ComputePriority (SeaCurrentsComponent &seaCurrentsComp, const std::pair< glm::vec2, glm::vec2 > &bounds, float threshold, int lowestPrio)
 
void renderCallback (RenderTaskContext *renderingContext, DrawContext *drawContext, const RenderItem *item)
 
TerrainDatagetTerrainData (Context *context, EntityId id)
 
void updateTerrainContext (TerrainData &terrainData, const RenderTaskContext *renderingContext, const RenderTarget *renderTarget, const CameraData &cameraData)
 
void COGSCORE_DLL_API seq_parameter_set_nalu (H264ParseData &parse, const uint8_t *sps, size_t sps_size)
 
void COGSCORE_DLL_API pic_parameter_set_nalu (H264ParseData &parse, const uint8_t *pps, size_t pps_size)
 
void COGSCORE_DLL_API byte_stream_nal_unit (H264ParseData &parse, const uint8_t *data, size_t size)
 
void COGSCORE_DLL_API extract_spspps (const uint8_t *data, size_t size, std::string &sps, std::string &pps)
 
bool COGSCORE_DLL_API extract_nalu_header (NALheader &header, const uint8_t *data, size_t size)
 
size_t COGSCORE_DLL_API find_next_frame (const uint8_t *data, size_t size)
 
void COGSCORE_DLL_API video_parameter_set_nalu (H265ParseData &parse, const uint8_t *vps, size_t vps_size)
 
void COGSCORE_DLL_API seq_parameter_set_nalu (H265ParseData &parse, const uint8_t *sps, size_t sps_size)
 
void COGSCORE_DLL_API pic_parameter_set_nalu (H265ParseData &parse, const uint8_t *pps, size_t pps_size)
 
void COGSCORE_DLL_API byte_stream_nal_unit (H265ParseData &parse, const uint8_t *data, size_t size)
 
void COGSCORE_DLL_API extract_spspps (const uint8_t *data, size_t size, std::string &vps, std::string &sps, std::string &pps)
 
bool COGSCORE_DLL_API extract_nalu_header (H265NALheader &header, const uint8_t *data, size_t)
 
void profile_tier_level (H265ProfileTierLevel &tier, const uint8_t *data, size_t &bit, uint32_t profilePresentFlag, uint32_t maxNumSubLayersMinus1)
 
void hrd_parameters (const uint8_t *, size_t, uint32_t commonInfPresentFlag, uint32_t maxNumbSubLayersMinus1)
 
void video_parameter_set_rbsp (H265ParseData &parse, const uint8_t *data, size_t size)
 
void seq_parameter_set_rbsp (H265ParseData &parse, const uint8_t *data, size_t size)
 
void pic_parameter_set_rbsp (H265ParseData &parse, uint8_t *data, size_t size)
 
void parse_mpeg_ts (MPEGTransportStreamData &parse, uint8_t *data, size_t size)
 
void write_b (uint32_t val, uint8_t *data, size_t &bit)
 
void write_u (uint32_t val, uint8_t *data, size_t &bit, size_t n)
 
uint32_t get_bit (const uint8_t *data, size_t &bit)
 
uint32_t peek_bit (const uint8_t *data, size_t &bit)
 
uint32_t next_bits (size_t n, const uint8_t *data, size_t bit)
 
uint32_t read_bits (size_t n, const uint8_t *data, size_t &bit)
 
uint64_t read_bits64 (size_t n, const uint8_t *data, size_t &bit)
 
uint32_t parse_ue (const uint8_t *data, size_t &bit)
 
uint32_t parse_ae (const uint8_t *, size_t &)
 
uint32_t parse_b (size_t n, const uint8_t *data, size_t &bit)
 
uint32_t parse_f (size_t n, const uint8_t *data, size_t &bit)
 
int32_t parse_i (size_t n, const uint8_t *data, size_t &bit)
 
int32_t parse_se (const uint8_t *data, size_t &bit)
 
uint32_t parse_u (size_t n, const uint8_t *data, size_t &bit)
 
uint64_t parse_u64 (size_t n, const uint8_t *data, size_t &bit)
 
uint32_t parse_ue (const uint8_t *data, size_t &bit, size_t size)
 
uint64_t parse_ue64 (const uint8_t *data, size_t &bit)
 
uint32_t more_rbsp_data (const uint8_t *data, size_t size, size_t bit)
 
void updateData (ZipData &data, const ZipComponent &component)
 
void updatePositions (const ZipData &data, const ZipComponent &component, Mesh *mesh, bool useGpu)
 
void updateIndexes (const ZipData &data, const ZipComponent &component, Mesh *mesh)
 
void updateTexCoords (const ZipData &data, const ZipComponent &, Mesh *mesh)
 

Variables

constexpr uint32_t NoObjectId = 0
 
constexpr size_t kMaxAxes = 128
 
constexpr size_t kMaxActions = 128
 
constexpr float kDefaultDeadZone = 0.1f
 
constexpr size_t kNoDeadZoneLink = static_cast<size_t>(-1)
 
constexpr float kDefaultSensitivity = 1.0f
 
constexpr size_t kMaxCascades = 6
 
constexpr int kMaxLights = 8
 
ImDrawCallback setGuiMode = dummyRenderCallback
 Callback for Render updates - not really called.
 
std::string guiWindowTitle
 
std::vector< size_t > guiIdsStack
 
std::unordered_map< std::string, TaskCreator > creators
 
std::unordered_map< std::string, TaskDestroyer > destroyers
 
const size_t kMaxBones = 256
 
constexpr uint32_t NoParentEntity = static_cast<uint32_t>(-1)
 
const size_t NoParentPart = uint32_t(-1)
 
const uint32_t NoIndex = uint32_t(-1)
 
const glm::mat4 ModelPartIdentity = glm::mat4(1.0f)
 
Cogs::Core::TextureAllocator textureAllocator
 
struct Cogs::Core::MessageDispatcher dispatcher
 
constexpr MessageId NoMessage = static_cast<MessageId>(-1)
 
constexpr size_t kMaxDynamicTypes = 1024
 
constexpr size_t kMaxDynamicMethods = 64
 
constexpr uint32_t NoCullingIndex = static_cast<uint32_t>(-1)
 
const SpriteBatchIndex NoBatchIndex = static_cast<SpriteBatchIndex>(-1)
 
const SpriteIndex NoSpriteIndex = static_cast<SpriteIndex>(-1)
 
const SpriteMaterialKey NoSpriteMaterial = static_cast<SpriteMaterialKey>(-1)
 
const SpriteMaterialKey DefaultSpriteMaterial = 0
 
const size_t kMinBatchSize = 256 / sizeof(SpriteVertex)
 
const int NoParent = -1
 
const size_t ParsedDataTypeSizes []
 
const char * ParsedDataTypeNames []
 
const StringRef NoString = StringRef{ 0 }
 
Cogs::Core::AudioExtension audioExtensionInstance
 
Cogs::Core::BlueNoiseExtension blueNoiseExtensionInstance
 
Cogs::Core::CasingExtension casingExtensionInstance
 
Cogs::Core::DimeLoaderExtension dimeLoaderExtensionInstance
 
Cogs::Core::DrillingExtension drillingExtensionInstance
 
const IconInfo icons []
 
Cogs::Core::EditorExtension editorExtension
 
Cogs::Core::GliTextureLoaderExtension gliTextureLoaderExtensionInstance
 
Cogs::Core::GltfLoaderExtension gltfLoader
 
Cogs::Core::GuiExtension guiExtensionInstance
 
Cogs::Core::Image360Extension image360ExtensionInstance
 
Cogs::Core::MultiphaseFlowExtension multiphaseFlowExtensionInstance
 
Cogs::Core::OGC3DTilesExtension OGC3DTilesExtensionInstance
 
Cogs::Core::PhysicsExtension physicsExtensionInstance
 
Cogs::Core::PotreeExtension potreeExtensionInstance
 
const Cogs::StringView spacingGlobalScaleName = "potree.spacing.globalScale"
 
const Cogs::StringView pointSizeGlobalMinScaleName = "potree.pointSize.globalMinScale"
 
const Cogs::StringView pointSizeGlobalMaxScaleName = "potree.pointSize.globalMaxScale"
 
const Cogs::StringView pointSizeGlobalScaleName = "potree.pointSize.globalScale"
 
Cogs::Core::ProceduralSkyExtension proceduralSkyExtension
 
Cogs::Core::SeaCurrentsExtension seaCurrentsExtensionInstance
 
Cogs::Core::TerrainExtension terrainExtensionInstance
 
Cogs::Core::WellLogExtension wellLogExtension
 

Detailed Description

Contains the Engine, Renderer, resource managers and other systems needed to run Cogs.Core.

! Build an octree from rvm files

See Documentation/BuildOctreeCommand.md

EXT_meshopt_compression functions

This is a compression which is only relates to the "BufferView" sections of the glTF spec. When a bufferview is defined, the accompanying decomp-data is declared. When the bufferview is used we need to decompress the corresponding buffer.

Ref: https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Vendor/EXT_meshopt_compression/README.md https://github.com/zeux/meshoptimizer#vertexindex-buffer-compression

Typedef Documentation

◆ AnimationHandle

Definition at line 34 of file Resources.h.

◆ AssetHandle

Definition at line 40 of file Resources.h.

◆ BlueNoiseHandle

Definition at line 13 of file Resources.h.

◆ BufferLoadInfo

Definition at line 13 of file BufferManager.h.

◆ CommandCreator

using Cogs::Core::CommandCreator = typedef std::function<EditorCommand* (EditorState*)>

Definition at line 25 of file Editor.h.

◆ ComponentCreator

using Cogs::Core::ComponentCreator = typedef std::function<ComponentModel::ComponentHandle(void)>

Definition at line 11 of file ComponentFunctions.h.

◆ ComponentDestroyer

using Cogs::Core::ComponentDestroyer = typedef std::function<void(ComponentModel::ComponentHandle)>

Definition at line 12 of file ComponentFunctions.h.

◆ ComponentNotifyCallback

typedef void Cogs::Core::ComponentNotifyCallback(BridgeContext *context, int componentTypeId, size_t entityId, int notification, const void *data, size_t dataSize)

Callback to receive component notifications.

Components can send notifications to the client. What a notification means is defined by the component.

Parameters
contextContext pointer
componentTypeIdTypeId of the component sending the notification.
entityIdId of the entity if notification is regarding a specific entity, otherwise NoEntity
notificationThe notification, what this means is defined by the notifying component type.

Definition at line 54 of file Context.h.

◆ ConstantBufferKey

using Cogs::Core::ConstantBufferKey = typedef uint16_t

Definition at line 47 of file Resources.h.

◆ ConstEntityPtr

using Cogs::Core::ConstEntityPtr = typedef std::shared_ptr<const ComponentModel::Entity>

Smart pointer for const Entity access.

Definition at line 15 of file EntityPtr.h.

◆ ConstWeakEntityPtr

using Cogs::Core::ConstWeakEntityPtr = typedef std::weak_ptr<const ComponentModel::Entity>

Weak Smart pointer for const Entity access.

Definition at line 21 of file EntityPtr.h.

◆ EffectHandle

Definition at line 16 of file Resources.h.

◆ EntityIds

typedef std::vector< EntityId > Cogs::Core::EntityIds

Definition at line 14 of file IEditor.h.

◆ EntityPtr

using Cogs::Core::EntityPtr = typedef std::shared_ptr<ComponentModel::Entity>

Smart pointer for Entity access.

Definition at line 12 of file EntityPtr.h.

◆ FontHandle

Definition at line 31 of file Resources.h.

◆ GuiDocumentHandle

Definition at line 37 of file Resources.h.

◆ HierarchyChangeCallback

typedef void Cogs::Core::HierarchyChangeCallback(class Context *context, EntityId entityId)

Hierarchy change callback.

Definition at line 34 of file Context.h.

◆ HierarchyChangedCallback

typedef std::function<void(Context*, EntityId)> Cogs::Core::HierarchyChangedCallback

Definition at line 17 of file ModelSystem.h.

◆ IAsyncTextureLoader

Definition at line 34 of file ITextureLoader.h.

◆ IFontLoader

Definition at line 25 of file IFontLoader.h.

◆ ILoadedModelLoader

Definition at line 20 of file IModelLoader.h.

◆ ILoadedTextureLoader

Definition at line 35 of file ITextureLoader.h.

◆ IModelLoader

Definition at line 19 of file IModelLoader.h.

◆ Inspector

typedef std::function<void(Context* context, bool* show)> Cogs::Core::Inspector

Definition at line 10 of file InspectorGuiRenderer.h.

◆ ITextureLoader

Definition at line 33 of file ITextureLoader.h.

◆ MaterialHandle

Definition at line 19 of file Resources.h.

◆ MaterialInstanceDefinition

Definition at line 68 of file EntityDefinition.h.

◆ MaterialInstanceHandle

Definition at line 22 of file Resources.h.

◆ MeshHandle

Definition at line 28 of file Resources.h.

◆ MeshReps

typedef std::vector<MeshRep> Cogs::Core::MeshReps

Definition at line 49 of file CommandHelpers.h.

◆ MessageCallback

typedef void Cogs::Core::MessageCallback(int messageId, const void *data)

Definition at line 42 of file Context.h.

◆ MessageId

using Cogs::Core::MessageId = typedef size_t

Definition at line 19 of file DynamicComponentSystem.h.

◆ ModelHandle

Definition at line 25 of file Resources.h.

◆ NeedsUpdateCallback

typedef void Cogs::Core::NeedsUpdateCallback(void *data)

Definition at line 26 of file Engine.h.

◆ OverlayVertex

Definition at line 164 of file VertexFormats.h.

◆ PipelineOptions

typedef std::vector<std::pair<std::string, std::string> > Cogs::Core::PipelineOptions

Definition at line 65 of file RenderTask.h.

◆ PropertyName

typedef std::string Cogs::Core::PropertyName

Typedef for property names.

Definition at line 18 of file MaterialPropertyBuffer.h.

◆ ReadbackCallback

typedef void Cogs::Core::ReadbackCallback(class Context *context, const char *key, const void *data, int size)

Definition at line 38 of file Context.h.

◆ ReadbackCallbackInternal

typedef void Cogs::Core::ReadbackCallbackInternal(class Context *context, const CameraData *, uint32_t frame, const char *key, const void *data, int size)

Definition at line 40 of file Context.h.

◆ RenderCallback

typedef void Cogs::Core::RenderCallback(class Context *context)

Definition at line 36 of file Context.h.

◆ RenderItems

typedef std::vector<RenderItem> Cogs::Core::RenderItems

Definition at line 240 of file RenderList.h.

◆ RenderTaskList

typedef std::vector<RenderTask *> Cogs::Core::RenderTaskList

Definition at line 103 of file RenderTask.h.

◆ ResizeCallback

using Cogs::Core::ResizeCallback = typedef void(class ViewContext* context, int x, int y)

Definition at line 21 of file ViewContext.h.

◆ ResourceBufferHandle

Definition at line 43 of file Resources.h.

◆ ResourceLoadCallback

typedef void Cogs::Core::ResourceLoadCallback(class Context *context, int resourceType, ResourceId id, int code)

Resource loading callback.

Definition at line 29 of file Context.h.

◆ ResourcesDefinition

using Cogs::Core::ResourcesDefinition = typedef std::vector<ResourceDefinition>

Definition at line 257 of file AssetDefinition.h.

◆ ScriptArgs

using Cogs::Core::ScriptArgs = typedef std::vector<ScriptArg>

Definition at line 47 of file ScriptingEngine.h.

◆ ScriptContextHandle

using Cogs::Core::ScriptContextHandle = typedef std::shared_ptr<ScriptContext>

Definition at line 112 of file ScriptingEngine.h.

◆ ScriptFunctionType

using Cogs::Core::ScriptFunctionType = typedef std::function<ScriptObject *(ScriptObject *, const ScriptArgs & args)>

Definition at line 49 of file ScriptingEngine.h.

◆ ScriptProxyGet

using Cogs::Core::ScriptProxyGet = typedef std::function<ScriptObject *(ScriptObject *, const StringView & key)>

Definition at line 50 of file ScriptingEngine.h.

◆ ScriptProxySet

using Cogs::Core::ScriptProxySet = typedef std::function<bool(ScriptObject *, const StringView & key, const ScriptArg & arg)>

Definition at line 51 of file ScriptingEngine.h.

◆ ShaderVariants

using Cogs::Core::ShaderVariants = typedef std::vector<ShaderVariantDefinition>

Definition at line 68 of file VariantDefinition.h.

◆ ShaderVariantSelectors

using Cogs::Core::ShaderVariantSelectors = typedef std::vector<ShaderVariantSelector>

Definition at line 69 of file VariantDefinition.h.

◆ SoundHandle

Definition at line 22 of file Sound.h.

◆ SoundLoadInfo

Definition at line 11 of file SoundManager.h.

◆ SpriteBatchIndex

using Cogs::Core::SpriteBatchIndex = typedef size_t

Definition at line 21 of file SpriteRenderSystem.h.

◆ SpriteIndex

using Cogs::Core::SpriteIndex = typedef size_t

Definition at line 24 of file SpriteRenderSystem.h.

◆ SpriteMaterialKey

using Cogs::Core::SpriteMaterialKey = typedef size_t

Definition at line 50 of file SpriteRenderSystem.h.

◆ TaskCreator

typedef std::function<RenderTask *(RenderTaskContext *, const RenderTaskDefinition &, const PipelineOptions &)> Cogs::Core::TaskCreator

Definition at line 25 of file RenderTaskFactory.h.

◆ TaskDestroyer

typedef std::function<void(RenderTask **, RenderTaskContext *)> Cogs::Core::TaskDestroyer

Definition at line 26 of file RenderTaskFactory.h.

◆ TaskFunction

using Cogs::Core::TaskFunction = typedef std::function<void ()>

Type of task function used by the task manager.

Definition at line 38 of file TaskManager.h.

◆ TaskFunctionRef

using Cogs::Core::TaskFunctionRef = typedef const TaskFunction&

Definition at line 39 of file TaskManager.h.

◆ TaskQueueId

using Cogs::Core::TaskQueueId = typedef uint16_t

Unique id for a task queue.

Definition at line 14 of file TaskManager.h.

◆ TextureDefinition

Definition at line 254 of file AssetDefinition.h.

◆ TextureHandle

Definition at line 21 of file IEditor.h.

◆ TextVertex

Definition at line 163 of file VertexFormats.h.

◆ TokenStream

using Cogs::Core::TokenStream = typedef std::vector<StringView>

Definition at line 85 of file Parsing.h.

◆ TSCallback

typedef std::function<void(TSCallbackData&)> Cogs::Core::TSCallback

Definition at line 135 of file MPEG_TS.h.

◆ TSEncodeCallback

typedef std::function<void(uint8_t *data, size_t size)> Cogs::Core::TSEncodeCallback

Definition at line 10 of file MPEG_TS_encode.h.

◆ VariableKey

using Cogs::Core::VariableKey = typedef uint16_t

Used to lookup material properties.

Definition at line 46 of file Resources.h.

◆ VideoDecoderCallback

using Cogs::Core::VideoDecoderCallback = typedef void(const VideoDecoderCallbackData&)

Definition at line 45 of file IVideoDecoder.h.

◆ VideoEncoderCallback

using Cogs::Core::VideoEncoderCallback = typedef std::function<void(struct IVideoEncoder*, struct VideoEncoderPayload &payload)>

Definition at line 12 of file IVideoEncoder.h.

◆ VideoPresentCallback

using Cogs::Core::VideoPresentCallback = typedef void(const VideoPresentCallbackData&)

Definition at line 51 of file IVideoDecoder.h.

◆ WeakEntityPtr

using Cogs::Core::WeakEntityPtr = typedef std::weak_ptr<ComponentModel::Entity>

Weak Smart pointer for Entity access.

Definition at line 18 of file EntityPtr.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : uint32_t

Definition at line 23 of file ImguiRenderer.h.

◆ ActivationResult

enum class Cogs::Core::ActivationResult : uint16_t
strong

Defines results for resource activation.

Enumerator
Success 

Resource activated successfully.

Failure 

Resource activation failed.

Postponed 

Resource activation postponed, retry later.

Delayed 

Delayed activation.

Definition at line 13 of file ResourceBase.h.

◆ Alignment

enum class Cogs::Core::Alignment : uint32_t
strong

Definition at line 17 of file Text3DComponent.h.

◆ ArrowScalingMode

enum class Cogs::Core::ArrowScalingMode : int
strong

Different modes for scaling surface current arrows based on the speed of the current.

The default range of the scaling factor controlled by this mode is 0.2->1.0, but these values can be changed using the cogs variables seacurrents.minScale and seacurrents.maxScale

Enumerator
Off 

No speed dependent arrow scaling.

All arrows will have the same size, controlled by SeaCurrentsComponent.scale.

Normal 

Arrows scale with the speed of the current from min speed to max speed.

These values can be changed using the cogs variables seacurrents.lowestSpeed and seacurrents.highestSpeed.

PerBand 

Arrows scale with the speed of the current within each band.

See IHO S111 standard for band information

Definition at line 15 of file SeaCurrentsComponent.h.

◆ AssetFlags

enum class Cogs::Core::AssetFlags
strong

Controls asset system's model instance behaviour.

Enumerator
InstantiateOnDemand 

Dynamically calculate lod levels and only instantiate what is visible.

RelativePaths 

Paths in asset file is relative to file's path.

OverrideMaterial 

Override any model's material with material member of asset component.

CloneMaterial 

Clone the assetComponent material over any loaded models's material and copy over properties and variants from the model material.

Definition at line 11 of file AssetComponent.h.

◆ AssetLoadFlags

enum class Cogs::Core::AssetLoadFlags
strong

Asset and Scene loading flags. May be combined with resource loading flags.

Enumerator
None 

No flags.

ForceSynchronous 

Force loading the resource synchronously.

Reload 

Reload action.

NoDefaultName 

No default name.

ForceUnique 

Force unique resource load when source resolves to existing resource.

DoNotCache 

Do not cache this resource for later retrieval.

First 

DO NOT USE. Intenal Just marks first available custom value.

ClearScene 

Clear the scene before loading the asset. NOT allowed for Bridge: loadAsset and loadAssetFromString.

NoDefault 

Don't load the default scene. Highly recommended as not setting this flag cause extra scene parse.

Definition at line 165 of file ResourceFlags.h.

◆ AssetResourceType

enum struct Cogs::Core::AssetResourceType : uint32_t
strong

Utility function to format a resource index as a filename.

Definition at line 52 of file AssetComponent.h.

◆ AssetWriteFlags

enum class Cogs::Core::AssetWriteFlags : uint32_t
strong

Flags that control serialization of assets.

Enumerator
None 

No flags set.

Geometry 

Store entity vector fields (vector<vec3>, vector<vec2>, vector<int>, vector<float>).

PrettyPrint 

Create human-readable JSON, that is, indentation and multiple lines.

Strip 

Strip away names and other data that is not strictly necessary.

Compress 

Compress resulting JSON using zstd, which is automatically recognized during reading.

Hierarchy 

Save all children, not only children in EntityStore.

Definition at line 8 of file AssetWriteFlags.h.

◆ AudioState

enum class Cogs::Core::AudioState
strong

Definition at line 13 of file AudioSystem.h.

◆ BasicOceanBeliefSystem

enum struct Cogs::Core::BasicOceanBeliefSystem
strong

Definition at line 26 of file BasicOceanComponent.h.

◆ BasicOceanReflection

enum struct Cogs::Core::BasicOceanReflection
strong

Definition at line 19 of file BasicOceanComponent.h.

◆ BasicOceanWaves

enum struct Cogs::Core::BasicOceanWaves
strong

Definition at line 13 of file BasicOceanComponent.h.

◆ BasicTerrainElevationChannel

enum struct Cogs::Core::BasicTerrainElevationChannel : uint32_t
strong

Specifies which color channel to use for elevation data.

Note that Alpha is not gamma-corrected, while RGB is. If you struggle with gamma applied to elevation values from a PNG, try using the alpha channel.

Enumerator
Red 

Fetch elevation from red channel of elevation texture.

Alpha 

Fetch elevation from alpha channel of elevation texture.

RedGreenBlue 

Concatenate bits from red, green and blue channels.

Definition at line 23 of file BasicTerrainComponent.h.

◆ BasicTerrainTransparencyMode

enum struct Cogs::Core::BasicTerrainTransparencyMode : uint32_t
strong
Enumerator
None 

No transparency, it is safe to store elevation in colormap's alpha channel.

Regular 

Regular transparency, use colormap's alpha channel.

BlendWithZWrite 

Treat terrain as opaque, but enable blending with colormap's alpha channel.

Definition at line 30 of file BasicTerrainComponent.h.

◆ BFrameReference

enum struct Cogs::Core::BFrameReference : unsigned
strong

Definition at line 28 of file VideoCaptureComponent.h.

◆ BlendMode

enum class Cogs::Core::BlendMode
strong

Defines blending modes for rendering.

Enumerator
Blend 

Render with regular alpha blending.

Add 

Render with additive blending.

PremultipliedBlend 

Render with blending, treating the source material as having pre-multiplied the alpha values into the RGB channels.

AlphaToCoverage 

Interpret alpha value as a coverage mask.

None 

No blending enabled for opaque shapes, defaults to Blend for transparent shapes.

Zero 

Disable all color writes.

Definition at line 12 of file MaterialOptions.h.

◆ BucketMask

enum class Cogs::Core::BucketMask
strong

Definition at line 65 of file RenderList.h.

◆ BucketType

enum struct Cogs::Core::BucketType
strong
Enumerator
Backdrop 

Background geometry behind everything else.

SolidOrderedBack 

Opaque ordered geometry behind un-ordered geometry.

Solid 

Opaque geometry in arbitrary order.

SolidOrderedFront 

Opaque ordered geometry in front of un-ordered geometry.

Transparent 

Transparent geometry rendered after the opaque geometry.

Definition at line 53 of file RenderList.h.

◆ CameraEasingMode

enum class Cogs::Core::CameraEasingMode : uint32_t
strong

Definition at line 15 of file CinematicCameraComponent.h.

◆ CameraFlags

enum class Cogs::Core::CameraFlags : uint32_t
strong
Enumerator
None 

No flags specified.

EnableRender 

Renderable.

EnablePicking 

Supports picking.

FlipY 

Flip the y-axis.

OverrideClearColor 

Provide a clear colour for this camera to use.

Definition at line 21 of file CameraComponent.h.

◆ CaptureFormat

enum struct Cogs::Core::CaptureFormat : unsigned
strong
Enumerator
PNG 

Encode capture image as a PNG image.

RawARGB 

Store image as a blob of raw bytes in ARGB order.

RawFloat 

Store image as a blob of raw float values (in host byte order).

Definition at line 39 of file CaptureComponent.h.

◆ CaptureMode

enum struct Cogs::Core::CaptureMode : unsigned
strong
Enumerator
Off 

Disable capture and camera, consume no rendering resources.

Scene 

Render in normal scene mode,.

See also
CaptureSceneMode.
ObjectId 

Render object ids.

ObjectIdColorize 

Render object ids, colorized for visualization.

Normals 

Render world-space surface normals.

Depth 

Render world-space distance from eye, scaled by 1/100 (so a value of 1 equals a distance of 100 units=.

Definition at line 13 of file CaptureComponent.h.

◆ CaptureSceneMode

enum struct Cogs::Core::CaptureSceneMode : unsigned
strong
Enumerator
Forward 

Normal forward rendering.

ForwardHdr 

Normal forward rendering with HDR post-proessing (exposure, bloom, tonemapping)

DeferredCausticsHdr 

Deferred rendering with support for caustics and HDR post-processing.

Definition at line 29 of file CaptureComponent.h.

◆ ChromaFormat

enum struct Cogs::Core::ChromaFormat : unsigned
strong

Definition at line 60 of file IVideoDecoder.h.

◆ ClipShapeType

enum struct Cogs::Core::ClipShapeType : uint32_t
strong

Specifices what kind of shape a clip shape has.

Enumerator
None 

No clipping at all.

Cube 

Clip the outside of a cube,.

InvertedCube 

Clip the inside of a cube.

Definition at line 11 of file ClipShapeComponent.h.

◆ Codec

enum struct Cogs::Core::Codec
strong

Definition at line 53 of file IVideoDecoder.h.

◆ ColourSpace

enum class Cogs::Core::ColourSpace : uint32_t
strong

Definition at line 28 of file IVideoDecoder.h.

◆ CPUFeature

enum struct Cogs::Core::CPUFeature : uint32_t
strong

Definition at line 34 of file Features.h.

◆ CullMode

enum class Cogs::Core::CullMode
strong

Defines primitive culling modes.

Enumerator
None 

No primitive culling performed.

Back 

Back face of primitives discarded before rasterization.

Front 

Front face of primitives discarded before rasterization.

Definition at line 61 of file MaterialOptions.h.

◆ DefaultValueType

enum class Cogs::Core::DefaultValueType
strong

Defines value types for default values.

Definition at line 34 of file EntityDefinition.h.

◆ DepthFunc

enum class Cogs::Core::DepthFunc
strong

Defines common depth functions.

Definition at line 50 of file MaterialOptions.h.

◆ DepthMode

enum class Cogs::Core::DepthMode
strong

Defines common depth stencil modes.

Enumerator
Default 

Default, depth test & write enabled.

NoWrite 

Depth test enabled, write disabled.

AlwaysWrite 

Depth write enabled, test mode "Always". Deprecated.

Disabled 

Depth test/write disabled.

Definition at line 36 of file MaterialOptions.h.

◆ EditingMode

enum class Cogs::Core::EditingMode
strong

Definition at line 23 of file EditorState.h.

◆ EditingPivot

enum class Cogs::Core::EditingPivot
strong

Definition at line 32 of file EditorState.h.

◆ EffectDefinitionFlags

enum Cogs::Core::EffectDefinitionFlags

Definition at line 77 of file EffectDefinition.h.

◆ EnginePermutationFlags

enum class Cogs::Core::EnginePermutationFlags
strong

Definition at line 27 of file EnginePermutations.h.

◆ EntityFind

enum class Cogs::Core::EntityFind
strong

Options to findEntity/getEntityFull.

Enumerator
Default 

Exact name match, recursive. (Pre-enum behaviour.)

PartialNameMatch 

Search for the first entity that partially contains the specified name.

NonRecursive 

Do not search recursively.

MaxFlag 

Do not go beyond this flag. Used as bounding value.

Definition at line 34 of file EntityStore.h.

◆ EntityParentMode

enum class Cogs::Core::EntityParentMode
strong

Definition at line 11 of file EntityCreator.h.

◆ FontSelectorFlags

enum class Cogs::Core::FontSelectorFlags
strong

Definition at line 11 of file FontSelectorComponent.h.

◆ FrustumPlanes

enum struct Cogs::Core::FrustumPlanes : uint8_t
strong

Definition at line 11 of file FrustumClassification.h.

◆ GeometricErrorKind

enum struct Cogs::Core::GeometricErrorKind
strong

Defines kinds of geometric error calculations.

Definition at line 26 of file LodComponent.h.

◆ GuiPointerSource

enum class Cogs::Core::GuiPointerSource
strong

Definition at line 15 of file GuiComponent.h.

◆ H264Preset

enum struct Cogs::Core::H264Preset : unsigned
strong

Definition at line 16 of file VideoCaptureComponent.h.

◆ H264Profile

enum struct Cogs::Core::H264Profile : unsigned
strong

Definition at line 9 of file VideoCaptureComponent.h.

◆ HorizontalAlignment

Horizontal alignment of overlays.

Definition at line 43 of file TextComponent.h.

◆ HorizontalJustification

Horizontal justification modes for text.

The text will be positioned horizontally relative to its resulting screen position according to its horizontal justification.

Enumerator
Left 

The leftmost character is placed to the right of the screen position.

Right 

The rightmost character is placed to the left of the screen position.

None 

None, the text is centered on the position.

Definition at line 57 of file TextComponent.h.

◆ Icon

enum class Cogs::Core::Icon
strong

Definition at line 40 of file Editor.h.

◆ Image360Notification

Enumerator
Ready 

All 6 baselayers are fully loaded, instance will begin rendering.

FetchingBegin 

Loading queue transitions from empty to non-empty, that is, instance needs data.

FetchingEnd 

Loading queue transitions from non-empty to empty, that is, instance has all data it currently needs.

Definition at line 9 of file Image360Component.h.

◆ ImageType

enum struct Cogs::Core::ImageType : int
strong

Definition at line 12 of file ImageType.h.

◆ InputDeviceType

enum class Cogs::Core::InputDeviceType : uint32_t
strong

Enumerations of Input Devices. Use to check if Cogs is capturing input events.

Definition at line 12 of file InputDeviceType.h.

◆ InputEventType

enum class Cogs::Core::InputEventType
strong

Type of data in input event queue.

Enumerator
Keyboard 

Keyboard event.

Mouse 

Mouse event.

Reset 

Input Focus lost event. Typically reset any cached mouse/keyboard state.

Definition at line 19 of file EventBasedInput.h.

◆ JsonParseFlags

enum class Cogs::Core::JsonParseFlags
strong

Definition at line 19 of file JsonParser.h.

◆ KeyboardModifiers

enum class Cogs::Core::KeyboardModifiers
strong

Current keyboard modifiers.

Definition at line 8 of file EventBasedInput.h.

◆ LightingLayers

enum class Cogs::Core::LightingLayers : uint32_t
strong

Definition at line 38 of file LightComponent.h.

◆ LightType

enum class Cogs::Core::LightType
strong

Defines light types.

Enumerator
Directional 

Directional light.

A directional light source has no position and has the same incoming light direction for all geometry in the scene.

Point 

Point light source.

Light emitted from a single point in space equally in all directions.

Spot 

Spot light source.

Light emitted from a single point source, shining in a given direction with falloff as the angle to the light varies.

Definition at line 14 of file LightComponent.h.

◆ LodPolicy

enum class Cogs::Core::LodPolicy
strong

Defines policies for controlling level of detail.

Enumerator
None 

No policy applied, the LodSystem will take no action on the entity.

CenterDistance 

Calculate center distance between the entity and the current camera, using threshold values to determine which children to turn on/off in the children member of SceneComponent.

GeometricTolerance 

Use a geometric error bound to determine how refined geometry needs to be at its current position.

Definition at line 14 of file LodComponent.h.

◆ MarkerPointSetShape

enum struct Cogs::Core::MarkerPointSetShape : uint32_t
strong
Enumerator
ViewAlignedDisc 

Point is a flat disc aligned with the main camera view.

ObjectSpaceFloorDisc 

Point is a flat disc on the XY-plane, point size is object-space diameter of disc.

FixedScreenSizeDisc 

Point is a screen-space disc, point size is screen-space diameter of disc, won't work with multiple cameras (VR) and raypicking without a camera.

Definition at line 13 of file MarkerPointSetComponent.h.

◆ MaterialDataType

enum class Cogs::Core::MaterialDataType
strong

Defines available data types for material properties.

Definition at line 19 of file MaterialTypes.h.

◆ MaterialDefinitionFlags

enum class Cogs::Core::MaterialDefinitionFlags : uint32_t
strong

Definition at line 74 of file MaterialDefinition.h.

◆ MaterialLoadFlags

enum class Cogs::Core::MaterialLoadFlags : uint32_t
strong

Material loading flags.

Enumerator
None 

Default loading.

DelayVariantLoading 

Do not load any material variants, will be specified later.

Definition at line 20 of file MaterialManager.h.

◆ MaterialPropertyFlags

enum struct Cogs::Core::MaterialPropertyFlags : uint8_t
strong
Enumerator
None 

No flags.

sRGB 

Value is a color and is subject to gamma correction.

Normalized 

Value is a direction vector is subject to normalization.

PartitionOfUnity 

A set of non-negative weights that sum to one.

Definition at line 12 of file MaterialProperty.h.

◆ MeshRenderDataFlags

enum struct Cogs::Core::MeshRenderDataFlags
strong

Definition at line 18 of file RenderSystem.h.

◆ MetricType

enum class Cogs::Core::MetricType : unsigned int
strong

Definition at line 17 of file QualityService.h.

◆ ModelLoadFlags

enum class Cogs::Core::ModelLoadFlags
strong

Model loading flags. May be combined with resource loading flags.

Enumerator
None 

No flags.

ForceSynchronous 

Force loading the resource synchronously.

Reload 

Reload action.

NoDefaultName 

No default name.

ForceUnique 

Force unique resource load when source resolves to existing resource.

DoNotCache 

Do not cache this resource for later retrieval.

First 

DO NOT USE. Intenal: First available flag for resource specific flags.

NeedsTangents 

The importer should generate tangent data if not present.

AutomaticTransparency 

Materials should be created with the TransparencyMode::Auto option, enabling transparency e.g for any materials with a alpha texture channel.

ForceTwoSidedMaterial 

All materials should be two sided, regardless of any material attributes specified. May fix issues with flipped winding, disappearing surfaces etc.

DisableOptimization 

Disables default optimizations enabled in model loading extensions (e.g spatial optimization in the Asset Importer loader).

SkipMaterials 

Tell the loader it may skip creating material instances during loading.

NoFlipTexcoords 

Do not flip texture coordinates.

CustomExtensionFlag 

Custom flag that can be used by an extension loader.

Definition at line 112 of file ResourceFlags.h.

◆ OGC3DTilesNotification

Enumerator
TilesetInitializing 

The tileset is being initialized.

TilesetReady 

The tileset is loaded, parsed and ready. The tileset's transform matrix is provided as an array of 16 double values by the notifications void * data ptr.

Definition at line 15 of file OGC3DTilesComponent.h.

◆ ParsedDataType

enum class Cogs::Core::ParsedDataType
strong

Definition at line 11 of file ValueVariant.h.

◆ ParsedValueTextureFlags

enum struct Cogs::Core::ParsedValueTextureFlags
strong

Definition at line 23 of file Parsing.h.

◆ PickingFlags

enum class Cogs::Core::PickingFlags : uint32_t
strong

Options for COGS picking.

Bitmask.

Enumerator
None 

No flags specified,.

PickSprites 

Check picking for entities with SpriteRenderComponent. I.e. Text, Annotation, Billboard, Overlay etc.

ReturnChildEntity 

Return ID if sub-entity picked, not set: return root parent entity.

RemoveDuplicateEntities 

For multi-pick return - remove entries with same EntityId. Note: May cause slowdown with many hits due to n^2 duplicate removal.

RemoveDuplicates 

For multi-pick return - remove entries with same EntityId & TextureId. Note: May cause slowdown with many hits due to n^2 duplicate removal.

FlatTexcoordInterpolation 

Do not interpolate texture coordinates. Needed if integer IDs are encoded as texture coordinates.

AddInstanceTexcoords 

If mesh has an offset to IDs encoded in a per-instance texcoords stream, add this to the result.

Definition at line 12 of file PickingFlags.h.

◆ PicksReturned

enum class Cogs::Core::PicksReturned
strong

  * Options for returning picking hits.

 

Enumerator
Closest 

Return just the closest hit.

AllUnsorted 

Return all hits in no specific order.

AllSorted 

Return all hits sorted based on distance from the ray start, closest first.

Definition at line 40 of file PickingFlags.h.

◆ PictureType

enum Cogs::Core::PictureType

Definition at line 14 of file IVideoEncoder.h.

◆ PlatformPreference

enum struct Cogs::Core::PlatformPreference : uint32_t
strong

Definition at line 72 of file Features.h.

◆ PositionMode

enum struct Cogs::Core::PositionMode
strong

Positioning mode.

Enumerator
Relative 

Position given in normalized device coordinates, with [-1, -1] corresponding to the lower left of the screen, and [1, 1] to the upper right corner.

Pixels 

Position given in screen pixels ranging from [0, 0] in the lower left corner to [viewport.width, viewport.height] in the upper right corner.

World 

Position given in world space coordinates.

Any positional offset is applied in world coordinates, meaning it is not transformed by the local to world transform.

Definition at line 31 of file SpriteRenderComponent.h.

◆ PotreeAttributes

enum struct Cogs::Core::PotreeAttributes
strong

Definition at line 62 of file PotreeSystem.h.

◆ PotreeColoring

enum struct Cogs::Core::PotreeColoring : uint32_t
strong

Specifies how the color of the points are chosen.

Enumerator
Base 

Use basecolor property of PotreeComponent, uniform color.

Color 

Use color property from point set if present, fallback to basecolor.

Intensity 

Use intensity property from point set if present and colorize it with the gradient texture, fallback to base color.

Level 

Use the octree depth as color, useful for debugging.

Definition at line 19 of file PotreeComponent.h.

◆ PotreeDebugBoxes

enum struct Cogs::Core::PotreeDebugBoxes : uint32_t
strong

Specifies how which nodes should get a debug node outlines.

Enumerator
None 

No debug node outlines.

ActiveCells 

Outline all active cells.

ActiveLeafCells 

Outline active cells that are currently leaves.

Definition at line 52 of file PotreeComponent.h.

◆ PotreeEnconding

enum struct Cogs::Core::PotreeEnconding
strong

Definition at line 55 of file PotreeSystem.h.

◆ PotreeeType

enum struct Cogs::Core::PotreeeType
strong

Definition at line 40 of file PotreeSystem.h.

◆ PotreeNotification

enum struct Cogs::Core::PotreeNotification
strong

Notification messages the potree instance can emit.

Enumerator
FetchingBegin 

Loading queue transitions from empty to non-empty, that is, instance needs data.

FetchingEnd 

Loading queue transitions from non-empty to empty, that is, instance has all data it currently needs.

Definition at line 10 of file PotreeComponent.h.

◆ PotreeOriginPolicy

enum struct Cogs::Core::PotreeOriginPolicy : uint32_t
strong

Specifies if any adjustments on offset are to be made.

Enumerator
None 

Just use scale and offset as is.

CenterOnOrigin 

Adjust offset s.t. point cloud is centered around entity origin.

CenterOnOriginAdjustCoordinate 

Adjust offset s.t. point cloud is centered around enttiy origin and adjust transformcomponent coordinate accordingly.

Definition at line 60 of file PotreeComponent.h.

◆ PotreePointShape

enum struct Cogs::Core::PotreePointShape : uint32_t
strong

Specifies the shape of the individual points.

Enumerator
Square 

Each point is a flat square.

Disc 

Each point is a flat disc.

Paraboloid 

Each point is a square with depth adjusted to a parabolic shape, requires support for changing fragment depth, fallback to Square.

Sphere 

Each point is a disc with depth adjusted to a spherical shape, requires support for changing fragment depth, fallback to Disc.

Definition at line 35 of file PotreeComponent.h.

◆ PotreePointSizing

enum struct Cogs::Core::PotreePointSizing : uint32_t
strong

Specifies how points are sized with regard to camera distance.

Enumerator
FixedSize 

Base point size with no scaling.

DistanceScaled 

Base point size scaled by camera distance.

DistanceAndDensityScaled 

Base point size scaled by camera distance and adjusted for local point density.

Definition at line 44 of file PotreeComponent.h.

◆ PotreeShading

enum struct Cogs::Core::PotreeShading : uint32_t
strong

Specifies if any extra shading should be done on the points.

Enumerator
Flat 

Use color directly as-is.

Basic 

Add a falloff darkening away from center.

Definition at line 28 of file PotreeComponent.h.

◆ PotreeState

enum struct Cogs::Core::PotreeState
strong

Definition at line 32 of file PotreeSystem.h.

◆ PotreeVertexLayout

enum struct Cogs::Core::PotreeVertexLayout
strong

Definition at line 76 of file PotreeSystem.h.

◆ ProjectionMode

enum class Cogs::Core::ProjectionMode
strong

Defines projection modes for the camera.

Enumerator
Perspective 

Perspective projection.

Orthographic 

Orthographic projection.

Definition at line 13 of file CameraComponent.h.

◆ PropertyType

enum struct Cogs::Core::PropertyType
strong

Definition at line 16 of file PropertiesManager.h.

◆ QualityRequest

enum struct Cogs::Core::QualityRequest
strong

Definition at line 9 of file QualityService.h.

◆ RenderFlags

enum struct Cogs::Core::RenderFlags : uint32_t
strong

Contains flags to describe rendering behavior.

Enumerator
None 

No render flags set.

SelfVisibility 

Self visibility, used by the SceneSystem to toggle entity visibility on/off.

ParentVisibility 

Parent visibility, used by the SceneSystem to toggle child entity visibility on/off.

SpecificVisibility 

Specific visibility, can be used by systems to toggle visibility, e.g when there is no available or invalid data, but the mesh data should stay intact.

SelfPickable 

Self pickable, used by the SceneSystem to toggle entity pickable on/off.

ParentPickable 

Parent pickable, used by the SceneSystem to toggle child entity pickable on/off.

CastShadows 

Casts shadows.

CustomMaterial 

Custom material set. Keeps legacy material component from changing the material instance.

ForcePickable 

Ensure component is pickable though it is not rendered.

DisableCulling 

Disable culling and always force this component to be rendered.

Default 

Default set of flags.

Definition at line 14 of file RenderComponent.h.

◆ RenderItemFlags

enum struct Cogs::Core::RenderItemFlags : uint16_t
strong

Definition at line 17 of file RenderList.h.

◆ RenderLayers

enum struct Cogs::Core::RenderLayers : uint32_t
strong

Contains common render layers.

Definition at line 52 of file RenderComponent.h.

◆ RenderMode

enum class Cogs::Core::RenderMode
strong

Defines global rendering modes that can be supported by the renderer.

Enumerator
Normal 

Regular shaded rendering.

Wireframe 

Wireframe rendering.

Box 

Bounding-box rendering over regular rendering.

Definition at line 36 of file IRenderer.h.

◆ RenderResourceFlags

enum class Cogs::Core::RenderResourceFlags : uint8_t
strong
Enumerator
None 

No flags specified.

Persistent 

The resource will persist from frame to frame, and can be considered ready for use at the beginning of each frame.

Override 

The resource contents are overridden from external code, and should not be updated automatically.

Definition at line 26 of file RenderResource.h.

◆ RenderResourceType

enum class Cogs::Core::RenderResourceType : uint8_t
strong

Definition at line 12 of file RenderResource.h.

◆ ResourceError

enum class Cogs::Core::ResourceError : uint32_t
strong

Definition at line 78 of file ResourceBase.h.

◆ ResourceFlags

enum class Cogs::Core::ResourceFlags : uint32_t
strong

Flags for describing resource attributes.

Enumerator
None 

No flags.

Active 

The resource is in use.

Resident 

The resource is loaded onto the GPU.

Orphaned 

The resource has no alive handles, bringing the reference count to zero.

Locked 

The resource is locked for outside manipulations by a thread performing work on the data.

Dependency 

The resource is a dependency that should trigger subsequent updates if changed.

Watched 

The resource on disk is being watched for changes.

Error 

Error.

KeepStorage 

Keep resource cpu storage after upload to the GPU.

Definition at line 26 of file ResourceBase.h.

◆ ResourceLoadFlags

enum class Cogs::Core::ResourceLoadFlags
strong

Flags for describing how to load a resource.

Enumerator
None 

No flags specified,.

ForceSynchronous 

Force loading the resource synchronously.

Reload 

Reload action.

NoDefaultName 

No default name.

ForceUnique 

Force unique resource load when source resolves to existing resource.

DoNotCache 

Do not cache this resource for later retrieval.

DoNotStoreSource 

Don't store the source.

ResourceSpecificFlag 

DO NOT USE. Intenal: First available flag for resource specific flags.

Definition at line 15 of file ResourceFlags.h.

◆ ResourceProtocol

enum class Cogs::Core::ResourceProtocol
strong

Definition at line 72 of file ResourceStore.h.

◆ ResourceStoreFlags

enum class Cogs::Core::ResourceStoreFlags
strong
Enumerator
NoCachedContent 

Never use cached data.

PreferUncachedContent 

Try fetching data before resorting to cached data.

Definition at line 64 of file ResourceStore.h.

◆ ResourceTypes

enum class Cogs::Core::ResourceTypes : uint32_t
strong

Resource types.

Definition at line 63 of file ResourceBase.h.

◆ ScriptFlags

enum class Cogs::Core::ScriptFlags
strong

Definition at line 20 of file ScriptingEngine.h.

◆ ScriptValueType

enum class Cogs::Core::ScriptValueType
strong

Definition at line 32 of file ScriptingEngine.h.

◆ SelectMode

enum class Cogs::Core::SelectMode
strong

Definition at line 25 of file IEditor.h.

◆ ShaderVariantType

enum class Cogs::Core::ShaderVariantType
strong

Definition at line 12 of file VariantDefinition.h.

◆ ShaderVarientFlags

enum class Cogs::Core::ShaderVarientFlags
strong

Definition at line 21 of file VariantDefinition.h.

◆ ShadowUpdate

enum class Cogs::Core::ShadowUpdate
strong

Definition at line 47 of file LightComponent.h.

◆ ShapePrimitiveType

enum class Cogs::Core::ShapePrimitiveType
strong

Definition at line 15 of file ShapeComponent.h.

◆ ShapeType

enum struct Cogs::Core::ShapeType : uint32_t
strong

Shape types generated by mesh generator.

Enumerator
None 

No shape.

Plane 

Plane shape.

Sphere 

Generic sphere shape.

SphereGeoTexSph 

Sphere shape with geodesic tessellation and spherical texture coordinates.

Texture coordinates are oriented similarly as gluSphere, i.e., s runs in the xy-plane starting at s=0 at +y running towards +x, and t runs with constant angular velocity from -z to z.

Note that gluSphere produces cylindrical texcoords.

SphereGeoTexCyl 

Sphere shape with geodesic tessellation and cylindrical texture coordinates.

Texture coordinates are identical to those of gluSphere, i.e., s runs in the xy-plane starting at s=0 at +y running towards +x, and t runs with constant angular velocity from -z to z.

Cylinder 

Generic cylinder shape.

Cone 

Generic cone shape.

Cube 

Generic cube shape.

CubeTex2D 

Cube shape with unit square texture coordinates over each face.

CoordSys 

Simple coordinate system where X axis is red, Y axis is green and Z axis is blue.

CircularArc 

Flat circular arc with inner (size.x) and outer (size.y) radius on the XY plane. Can be extended (arcStart == arcEnd) to encapsulate a whole circle to make a ring.

Definition at line 18 of file ShapeType.h.

◆ SimplexResult

enum struct Cogs::Core::SimplexResult : int
strong
Enumerator
OptimalSolutionFound 

Success, optimal solution was found and written to solution.

NoFeasibleSolutions 

Success, determined that no feasible solutions exist.

TooManyIterations 

Failure, ran more iterations than allowed.

BlandsFailed 

Failure while applying Bland's rule.

Definition at line 12 of file Simplex.h.

◆ SizeMode

enum struct Cogs::Core::SizeMode
strong

Sizing mode.

Enumerator
Relative 

Size given in normalized device coordinates.

Using this mode, a sprite of size [2, 2] will cover the entire screen.

Pixels 

Size given in screen pixels.

Can be used for absolute sizing and positioning to pixel borders.

Definition at line 12 of file SpriteRenderComponent.h.

◆ SoftShadows

enum class Cogs::Core::SoftShadows
strong

Definition at line 57 of file LightComponent.h.

◆ SortFlags

enum class Cogs::Core::SortFlags
strong

Definition at line 12 of file FilterListTask.h.

◆ StateChangeFlags

enum struct Cogs::Core::StateChangeFlags : uint16_t
strong

Definition at line 37 of file RenderList.h.

◆ TaskFlags

enum class Cogs::Core::TaskFlags : uint16_t
strong

Definition at line 35 of file TaskManager.cpp.

◆ TextureDimensions

enum class Cogs::Core::TextureDimensions
strong

Texture dimensions.

Definition at line 83 of file MaterialProperty.h.

◆ TextureLoadFlags

enum class Cogs::Core::TextureLoadFlags
strong

Texture loading flags. May be combined with resource load flags.

Enumerator
None 

No flags.

ForceSynchronous 

Force loading the resource synchronously.

Reload 

Reload action.

NoDefaultName 

No default name.

ForceUnique 

Force unique resource load when source resolves to existing resource.

DoNotCache 

Do not cache this resource for later retrieval.

First 

DO NOT USE. Intenal: First available flag for resource specific flags.

Flip 

Flip the texture data vertically before it is passed to the rendering backend.

Default convention in cogs is that first pixel in memory maps to texcoord y=0, and this is usually interpreted as top of the image, and thus most image formats are passed directly unmodified. Setting this flags flips the texture such that y=0 maps to the last row of the texture data. See Documentation/conventions.md for more details.

LinearColorSpace 

For textures with RGBA format without color space information, mark the data as being in linear color space so no gamma conversion is performed.

Useful when loading images for use as normal, roughness or other non-color maps.

NoMipMaps 

Do not generate mipmaps.

By default, mipmaps will be generated for all texture format and sizes supported by the rendering backend, as this will provide the best visual quality and performance for normal texture data.

NoDelete 

Do not assume ownership of external texture so it won't be deleted by cogs.

ColorSpaceFromLoadInfo 

by default we want to retrieve colorspace info from the texture data, not from the format specified in TextureLoadInfo, however, if this flag is set, retrieve it from TextureLoadInfo instead.

It is used when the application knows which colorspace should be used, regardless of the texture data.

Definition at line 46 of file ResourceFlags.h.

◆ TransferFunction

enum class Cogs::Core::TransferFunction : uint32_t
strong

Definition at line 21 of file IVideoDecoder.h.

◆ TransparencyMode

enum class Cogs::Core::TransparencyMode
strong

Definition at line 71 of file MaterialOptions.h.

◆ VariableFlags

enum class Cogs::Core::VariableFlags
strong

Variable flags, specifying variable behavior.

Definition at line 14 of file Variables.h.

◆ VerticalAlignment

enum class Cogs::Core::VerticalAlignment
strong

Defines vertical alignment modes for text.

The text will positioned vertically relative to its resulting screen position according to its vertical alignment.

Enumerator
Top 

Align the text towards the top, making the position the baseline of the text.

Center 

Center the text on the screen position.

Bottom 

Align the text towards the bottom, making the position minus the font height the baseline of the text.

Definition at line 24 of file TextComponent.h.

◆ VideoDecoderPresentMode

enum struct Cogs::Core::VideoDecoderPresentMode
strong

Definition at line 68 of file IVideoDecoder.h.

◆ WriteModelFlags

enum struct Cogs::Core::WriteModelFlags : uint32_t
strong

Definition at line 17 of file ModelWriter.h.

Function Documentation

◆ aboutCogs()

void Cogs::Core::aboutCogs ( class Context ,
bool *  show 
)

Definition at line 9 of file AboutInspector.cpp.

◆ addTaskType()

void Cogs::Core::addTaskType ( const StringView key,
TaskCreator  creator,
TaskDestroyer  destroyer 
)

Definition at line 477 of file RenderTaskFactory.cpp.

◆ addVariable()

bool Cogs::Core::addVariable ( ExpressionContext expressionContext,
StringView  name,
const ParsedValue p 
)

Definition at line 213 of file RenderPipelineFactory.cpp.

◆ appendBytesize()

void Cogs::Core::appendBytesize ( std::string &  out,
size_t  byteSize 
)

Definition at line 109 of file InspectorGuiHelper.cpp.

◆ applyConstantBuffers()

bool Cogs::Core::applyConstantBuffers ( class Context context,
const MaterialProperties materialProperties,
ConstantBuffers constantBuffers 
)

Definition at line 22 of file MaterialBuilder.cpp.

◆ applyFieldValue()

template<typename T >
void Cogs::Core::applyFieldValue ( void *  object,
const Reflection::Field field,
T &  value 
)

Definition at line 30 of file EntityDefinition.cpp.

◆ applyFieldValues()

void Cogs::Core::applyFieldValues ( class Context context,
std::span< FieldValue entityDefinition,
ComponentModel::Entity entity 
)

◆ applyMaterialDefinition()

bool Cogs::Core::applyMaterialDefinition ( class Context context,
const MaterialDefinition materialDefinition,
Material material 
)

Definition at line 154 of file MaterialBuilder.cpp.

◆ applyMaterialInstance()

void Cogs::Core::applyMaterialInstance ( const DrawContext drawContext,
const EffectBinding bindings,
const RenderMaterialInstance renderMaterialInstance 
)

Definition at line 387 of file RenderStateUpdater.cpp.

◆ applyMaterialInstanceValue()

void Cogs::Core::applyMaterialInstanceValue ( Context context,
void *  component,
const Reflection::Field field,
const FieldValue value 
)

Definition at line 149 of file EntityDefinition.cpp.

◆ applyMaterialOption()

void Cogs::Core::applyMaterialOption ( MaterialOptions options,
const StringView key,
const StringView value 
)

Definition at line 13 of file MaterialOptions.cpp.

◆ applyMaterialPermutation()

void Cogs::Core::applyMaterialPermutation ( RenderTaskContext taskContext,
const DrawContext drawContext,
const EffectBinding bindings,
const RenderMaterialInstance renderMaterialInstance 
)

Definition at line 379 of file RenderStateUpdater.cpp.

◆ applyMaterialPerObject()

void Cogs::Core::applyMaterialPerObject ( const DrawContext drawContext,
const RenderMaterialInstance renderMaterialInstance,
const RenderItem renderItem 
)

Definition at line 439 of file RenderStateUpdater.cpp.

◆ applyMaterialPerObjectBatched()

void Cogs::Core::applyMaterialPerObjectBatched ( const DrawContext drawContext,
const RenderMaterialInstance renderMaterialInstance,
const RenderItem renderItem,
size_t  o 
)

Definition at line 415 of file RenderStateUpdater.cpp.

◆ applyMaterialProperties() [1/2]

bool Cogs::Core::applyMaterialProperties ( class Context context,
const MaterialProperties materialProperties,
Material material 
)

Definition at line 104 of file MaterialBuilder.cpp.

◆ applyMaterialProperties() [2/2]

void Cogs::Core::applyMaterialProperties ( const DrawContext drawContext,
const Material material,
const ConstantBufferBindingHandle bufferBinding,
const BufferHandle constantBuffer 
)

Definition at line 26 of file RenderStateUpdater.cpp.

◆ applyRecursiveFieldChange()

template<typename ComponentType , typename MemberType , class Recurse >
void Cogs::Core::applyRecursiveFieldChange ( ComponentModel::Entity entity,
MemberType ComponentType::*  member,
MemberType  value,
Recurse  recurse 
)

Recurse setting given field for all components of given type (e.g. 1) to given value. Recurse is Lambda: [](const Entity* entity) { return true if recurse to child:}

Definition at line 14 of file SceneTraversal.h.

References applyRecursiveFieldChange(), Cogs::Core::SceneComponent::children, Cogs::ComponentModel::Entity::getComponent(), and Cogs::ComponentModel::Entity::getComponents().

Referenced by applyRecursiveFieldChange().

◆ applyRenderMaterial()

void Cogs::Core::applyRenderMaterial ( const MaterialComponent component,
const MaterialData data 
)

Apply the material instance from the given component to the mesh render component (if found) on the same entity, making mesh rendering use said instance.

Definition at line 37 of file MaterialSystem.cpp.

References Cogs::ComponentModel::Component::getComponent(), Cogs::Core::MeshRenderComponent::material, and Cogs::Core::SubMeshRenderComponent::materials.

Referenced by Cogs::Core::MaterialSystem::update().

◆ assetInspector() [1/2]

void Cogs::Core::assetInspector ( class Context context,
bool *  show 
)

Definition at line 559 of file AssetInspector.cpp.

◆ assetInspector() [2/2]

void Cogs::Core::assetInspector ( Context context)

Definition at line 163 of file AssetInspector.cpp.

◆ assetInstanceInspector()

void Cogs::Core::assetInstanceInspector ( Context context)

Definition at line 459 of file AssetInspector.cpp.

◆ assetQueueInspector()

void Cogs::Core::assetQueueInspector ( class Context context,
bool *  show 
)

Definition at line 576 of file AssetInspector.cpp.

◆ boundsInspector()

void Cogs::Core::boundsInspector ( class Context context,
bool *  show 
)

Definition at line 147 of file BoundsInspector.cpp.

◆ bufferInspector()

void Cogs::Core::bufferInspector ( class Context context,
bool *  show 
)

Definition at line 129 of file MeshInspector.cpp.

◆ buildEffect()

bool Cogs::Core::buildEffect ( class Context context,
std::vector< std::pair< std::string, std::string > > &  definitions,
const MaterialDefinition materialPermutation,
const EnginePermutation permutation 
)

Definition at line 609 of file ShaderBuilder.cpp.

◆ buildEffectES3()

bool Cogs::Core::buildEffectES3 ( class Context context,
std::vector< std::pair< std::string, std::string > > &  definitions,
MaterialDefinition materialPermutation,
const EnginePermutation permutation,
const uint32_t  multiViewCount 
)

Definition at line 653 of file ShaderBuilderES3.cpp.

◆ buildEffectWebGPU()

bool Cogs::Core::buildEffectWebGPU ( class Context context,
std::vector< std::pair< std::string, std::string > > &  definitions,
MaterialDefinition materialDefinition,
const EnginePermutation permutation,
const uint32_t  multiViewCount 
)

Definition at line 637 of file ShaderBuilderWebGPU.cpp.

◆ byte_stream_nal_unit() [1/2]

void Cogs::Core::byte_stream_nal_unit ( H264ParseData parse,
const uint8_t *  data,
size_t  size 
)

Definition at line 1484 of file H264Parser.cpp.

◆ byte_stream_nal_unit() [2/2]

void Cogs::Core::byte_stream_nal_unit ( H265ParseData parse,
const uint8_t *  data,
size_t  size 
)

Definition at line 689 of file H265Parser.cpp.

◆ calculateBounds() [1/2]

Cogs::Geometry::BoundingBox Cogs::Core::calculateBounds ( Mesh mesh)

Calculate a bounding box for the given mesh.

Parameters
meshPointer to a Mesh resource to calculate bounding box for.
Returns
A bounding box spanning the min and max positions of the Mesh, or empty box if the mesh contains no data.

Definition at line 283 of file MeshHelper.cpp.

References calculateBounds(), and Cogs::Core::Mesh::getCount().

Referenced by calculateBounds(), Cogs::Core::InstancedMeshRenderSystem::update(), Cogs::Core::RenderSystem::update(), and Cogs::Core::SubMeshRenderSystem::update().

◆ calculateBounds() [2/2]

Cogs::Geometry::BoundingBox Cogs::Core::calculateBounds ( Mesh mesh,
uint32_t  startIndex,
uint32_t  vertexCount 
)

Definition at line 288 of file MeshHelper.cpp.

◆ calculateLevelOfDetail()

void Cogs::Core::calculateLevelOfDetail ( Context context,
const LodComponent component,
LodData lodData,
const glm::vec3 &  cameraCenter,
const CameraData cameraData,
bool  cameraChanged 
)

Definition at line 57 of file LodSystem.cpp.

◆ calculateModelCost()

void Cogs::Core::calculateModelCost ( Context ,
ModelInstanceData modelData,
Model model 
)

Definition at line 855 of file AssetSystem.cpp.

◆ calculateSegments()

int Cogs::Core::calculateSegments ( float  radius)

Definition at line 219 of file GuiContainer.cpp.

◆ canMerge()

bool Cogs::Core::canMerge ( SceneComponent sc)

Definition at line 21 of file MergeCommand.cpp.

◆ changeSuffix()

void Cogs::Core::changeSuffix ( std::string &  dst,
const std::string &  from,
const std::string &  to 
)

Definition at line 25 of file EffectCache.cpp.

◆ checkEntity()

bool Cogs::Core::checkEntity ( Context context,
AssetLodReference lodReference,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance 
)

Definition at line 1121 of file AssetSystem.cpp.

◆ cleanupTypes()

void Cogs::Core::cleanupTypes ( )

Definition at line 460 of file Types.cpp.

◆ clearEntity()

void Cogs::Core::clearEntity ( Context context,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance 
)

Definition at line 1071 of file AssetSystem.cpp.

◆ closeMergeState()

void Cogs::Core::closeMergeState ( Context context,
MergeMeshState state 
)

Definition at line 201 of file MergeCommand.cpp.

◆ ComputePriority()

void Cogs::Core::ComputePriority ( SeaCurrentsComponent seaCurrentsComp,
const std::pair< glm::vec2, glm::vec2 > &  bounds,
float  threshold,
int  lowestPrio 
)

Definition at line 402 of file SeaCurrentsExtension.cpp.

◆ containsInvariantCase()

bool Cogs::Core::containsInvariantCase ( std::string_view  str,
std::string_view  substr 
)

Definition at line 142 of file InspectorGuiHelper.cpp.

◆ copyStream()

template<typename Container >
void Cogs::Core::copyStream ( Mesh mesh,
VertexDataType::EVertexDataType  dataType,
Container &  container 
)

Definition at line 39 of file MergeCommand.cpp.

◆ createAssetResourcePathFromIndex()

COGSCORE_DLL_API std::string Cogs::Core::createAssetResourcePathFromIndex ( uint32_t  resourceIndex,
AssetResourceType  assetResourceType 
)

Definition at line 34 of file AssetComponent.cpp.

◆ createAsSingleMeshItem()

EntityPtr Cogs::Core::createAsSingleMeshItem ( Context context,
Cogs::ComponentModel::Entity parent,
std::vector< MeshHandle > &  originalMeshes,
MeshReps &  meshes,
MeshItems items 
)

Definition at line 231 of file CommandHelpers.cpp.

◆ createDefaultEntityDefinitions()

void Cogs::Core::createDefaultEntityDefinitions ( class EntityStore entityStore)

Create the default entity definitions supported by Cogs.

Note that entity definitions do not have validation performed at creation time, but will be validated whenever an entity is created from said definition.

Parameters
entityStoreEntityStore instance to store the default definitions in.

Definition at line 8 of file EntityDefinitions.cpp.

Referenced by Cogs::Core::EntityStore::EntityStore().

◆ createDocument()

void Cogs::Core::createDocument ( const ScriptContextHandle &  scriptContext,
litehtml::document document,
const litehtml::element::ptr &   
)

Definition at line 420 of file GuiContainer.cpp.

◆ createElement()

ScriptObject * Cogs::Core::createElement ( const ScriptContextHandle &  scriptContext,
litehtml::document document,
const litehtml::element::ptr &  found 
)

Definition at line 335 of file GuiContainer.cpp.

◆ createEntity() [1/2]

Cogs::ComponentModel::Entity * Cogs::Core::createEntity ( Context context,
SceneDefinition scene,
const SceneEntityDefinition definition,
Cogs::ComponentModel::Entity parent = nullptr 
)

Definition at line 138 of file EntityCreator.cpp.

◆ createEntity() [2/2]

Cogs::Core::EntityPtr Cogs::Core::createEntity ( EntityCreationContext entityContext,
const SceneEntityDefinition definition 
)

Definition at line 30 of file EntityCreator.cpp.

◆ createEntityDefinition()

void Cogs::Core::createEntityDefinition ( const std::string &  name,
std::vector< std::string >  components,
class EntityStore entityStore 
)

Create a simple entity definition with the given name and list of components.

The definition will be added to the given entity store.

To create more advanced entity definitions see readEntityDefinition().

Definition at line 263 of file EntityDefinitions.cpp.

References Cogs::Core::EntityStore::addEntityDefinition(), Cogs::Core::EntityDefinition::components, and Cogs::Core::EntityDefinition::name.

Referenced by Cogs::Core::DrillingExtension::initialize(), and Cogs::Core::TerrainExtension::initialize().

◆ createGpuResource()

template<typename Handle , typename Resource >
Resource * Cogs::Core::createGpuResource ( const Handle &  handle,
Collections::Pool< Resource > &  resources,
RenderResources  
)

Definition at line 281 of file RenderResources.cpp.

◆ createLayerModel()

void Cogs::Core::createLayerModel ( Context context,
Model model,
uint32_t  parentIndex,
const std::string &  name,
const std::vector< PositionNormalVertex > &  vertexBuffer,
const std::vector< uint32_t > &  indexBuffer,
PrimitiveType::EPrimitiveType  primitiveType,
int  colorIndex 
)

Definition at line 57 of file DimeLoader.cpp.

◆ createMaterial()

MaterialInstanceHandle Cogs::Core::createMaterial ( Context context,
int  colorIndex,
PrimitiveType::EPrimitiveType  primitiveType 
)

Definition at line 37 of file DimeLoader.cpp.

◆ createMesh()

MeshHandle Cogs::Core::createMesh ( Context context,
SceneComponent sc 
)

Definition at line 48 of file MergeCommand.cpp.

◆ createNewMeshItems()

EntityPtr Cogs::Core::createNewMeshItems ( Context context,
Cogs::ComponentModel::Entity parent,
std::vector< MeshHandle > &  originalMeshes,
MeshReps &  meshes,
MeshItems items 
)

Definition at line 216 of file CommandHelpers.cpp.

◆ createPipeline()

bool Cogs::Core::createPipeline ( RenderTaskContext renderContext,
const RenderPipelineDefinition pipelineDefinition,
RenderTaskResources pipelineResources,
RenderPipeline pipeline,
const StringView path,
const CameraData pushCameraData,
const PipelineOptions &  options = PipelineOptions(),
const std::string &  prefix = "" 
)

Definition at line 714 of file RenderPipelineFactory.cpp.

◆ createPipelineRecursive()

bool Cogs::Core::createPipelineRecursive ( Cogs::Core::RenderTaskContext renderContext,
const Cogs::Core::RenderPipelineDefinition pipelineDefinition,
Cogs::Core::RenderTaskResources pipelineResources,
Cogs::Core::RenderPipeline pipeline,
const Cogs::Core::PipelineOptions &  options,
Cogs::Core::ExpressionContext expressionContext,
const std::vector< ParsedValue > &  attributes,
const std::string &  prefix,
const std::string &  prefixOuter 
)

Definition at line 387 of file RenderPipelineFactory.cpp.

◆ createRenderBuffer()

RenderBuffer * Cogs::Core::createRenderBuffer ( RenderResources renderResources,
const std::string &  resourceName,
const RenderResourceDefinition r,
ExpressionContext expressionContext 
)

Definition at line 233 of file RenderPipelineFactory.cpp.

◆ createRenderTask()

Cogs::Core::RenderTask * Cogs::Core::createRenderTask ( RenderTaskContext taskContext,
const RenderTaskDefinition taskDefinition,
std::list< std::unique_ptr< Cogs::Core::SubContext > > &  subContexts,
ExpressionContext expressionContext,
const PipelineOptions &  options = PipelineOptions() 
)

Definition at line 290 of file RenderTaskFactory.cpp.

◆ createRenderTexture()

RenderTexture * Cogs::Core::createRenderTexture ( RenderTaskContext renderContext,
RenderPipeline pipeline,
RenderTaskResources pipelineResources,
const std::string &  resourceName,
const std::string &  prefix,
const RenderResourceDefinition r,
ExpressionContext expressionContext 
)

Definition at line 270 of file RenderPipelineFactory.cpp.

◆ createRoundedPath()

void Cogs::Core::createRoundedPath ( const ImVec2 &  a,
const ImVec2 &  b,
const litehtml::border_radiuses radius,
float  width = 1.0f 
)

Definition at line 224 of file GuiContainer.cpp.

◆ createTask()

template<typename TaskType >
TaskType * Cogs::Core::createTask ( RenderTaskContext renderContext,
bool  initialize = true 
)

Definition at line 56 of file RenderTaskFactory.cpp.

◆ decodePotreeBin()

void Cogs::Core::decodePotreeBin ( PotreeDecodeOutData out,
const PotreeDecodeInData in,
const Cogs::FileContents inData 
)

Definition at line 360 of file ParseBin.cpp.

◆ destroyRenderTask()

void Cogs::Core::destroyRenderTask ( RenderTaskContext renderContext,
RenderTask task 
)

Definition at line 472 of file RenderTaskFactory.cpp.

◆ dispatch()

template<typename Collection , typename... Args>
void Cogs::Core::dispatch ( const Collection &  receivers,
size_t  messageId,
Args...  args 
)

Definition at line 57 of file DynamicComponentSystem.cpp.

◆ dispatchMessages()

void Cogs::Core::dispatchMessages ( Context context,
AssetInstanceData assetInstance 
)

Definition at line 1632 of file AssetSystem.cpp.

◆ dispatchMouseEvent()

void Cogs::Core::dispatchMouseEvent ( ScriptContextHandle  scriptContext,
const litehtml::element::ptr &  el,
const StringView eventName,
const StringView attributeName,
int  x,
int  y 
)

Definition at line 436 of file GuiContainer.cpp.

◆ dispatchRef()

template<typename Collection , typename... Args>
void Cogs::Core::dispatchRef ( const Collection &  receivers,
size_t  messageId,
Args...  args 
)

Definition at line 63 of file DynamicComponentSystem.cpp.

◆ drawCoordSys()

void Cogs::Core::drawCoordSys ( RenderTaskContext taskContext,
DrawContext drawContext,
const RenderItem item,
const glm::mat4 &  M,
bool  overlay = false 
)

Definition at line 262 of file DebugGeometryRenderers.cpp.

◆ drawOneOneWireBox()

void Cogs::Core::drawOneOneWireBox ( RenderTaskContext taskContext,
DrawContext drawContext,
const RenderItem item,
const glm::mat4 &  M,
unsigned  color 
)

Definition at line 256 of file DebugGeometryRenderers.cpp.

◆ drawUnitWireBox()

void Cogs::Core::drawUnitWireBox ( RenderTaskContext taskContext,
DrawContext drawContext,
const RenderItem item,
const glm::mat4 &  M,
unsigned  color 
)

Definition at line 250 of file DebugGeometryRenderers.cpp.

◆ enforcePropertyFlags()

void Cogs::Core::enforcePropertyFlags ( const MaterialProperty prop,
MaterialPropertyFlags  flags,
void *  data 
)

Definition at line 58 of file Material.cpp.

◆ engineInspector()

void Cogs::Core::engineInspector ( class Context context,
bool *  show 
)

Definition at line 189 of file MeshInspector.cpp.

◆ entityInspector()

void Cogs::Core::entityInspector ( class Context context,
bool *  show 
)

Definition at line 680 of file EntityInspector.cpp.

◆ euclidean() [1/2]

glm::vec3 Cogs::Core::euclidean ( const glm::vec4 &  a)

Definition at line 540 of file AssetSystem.cpp.

◆ euclidean() [2/2]

glm::vec3 Cogs::Core::euclidean ( const glm::vec4  h)
inline

Definition at line 10 of file Math.h.

◆ evaluateCondition()

bool Cogs::Core::evaluateCondition ( Context context,
const StringView condition,
const RenderPipelineDefinition pipelineDefinition,
const std::vector< ParsedValue > &  attributes 
)

Definition at line 32 of file RenderPipelineFactory.cpp.

◆ evaluateTaskDependencies()

void Cogs::Core::evaluateTaskDependencies ( std::list< RenderTask * >  tasks,
const RenderTaskResources globalResources,
RenderPipeline pipeline 
)

Definition at line 101 of file RenderPipelineFactory.cpp.

◆ extract_nalu_header() [1/2]

bool COGSCORE_DLL_API Cogs::Core::extract_nalu_header ( H265NALheader header,
const uint8_t *  data,
size_t  size 
)

Definition at line 848 of file H265Parser.cpp.

◆ extract_nalu_header() [2/2]

bool Cogs::Core::extract_nalu_header ( NALheader header,
const uint8_t *  data,
size_t  size 
)

Definition at line 1658 of file H264Parser.cpp.

◆ extract_spspps() [1/2]

void Cogs::Core::extract_spspps ( const uint8_t *  data,
size_t  size,
std::string &  sps,
std::string &  pps 
)

Definition at line 1599 of file H264Parser.cpp.

◆ extract_spspps() [2/2]

void Cogs::Core::extract_spspps ( const uint8_t *  data,
size_t  size,
std::string &  vps,
std::string &  sps,
std::string &  pps 
)

Definition at line 784 of file H265Parser.cpp.

◆ extractIndexStreamUint32()

std::span< const uint32_t > Cogs::Core::extractIndexStreamUint32 ( Memory::MemoryBuffer backing,
MeshHandle  mesh 
)

Definition at line 73 of file MeshHelper.cpp.

◆ extractSemanticStreamVec3()

std::span< const glm::vec3 > Cogs::Core::extractSemanticStreamVec3 ( Memory::MemoryBuffer backing,
MeshHandle  mesh,
const Cogs::ElementSemantic  semantic,
size_t  semanticIndex = 0 
)

Definition at line 12 of file MeshHelper.cpp.

◆ find_next_frame()

size_t Cogs::Core::find_next_frame ( const uint8_t *  data,
size_t  size 
)

Definition at line 1690 of file H264Parser.cpp.

◆ findElement()

std::shared_ptr< litehtml::element > Cogs::Core::findElement ( const std::shared_ptr< litehtml::element > &  e,
const StringView id 
)

Definition at line 39 of file GuiContainer.cpp.

◆ findFirst()

ModelPart * Cogs::Core::findFirst ( Model model)

Definition at line 90 of file CollisionSystem.cpp.

◆ findFirstLodChild()

uint32_t Cogs::Core::findFirstLodChild ( const AssetDefinition definition,
uint32_t  firstChild,
int32_t  targetLevel 
)

Definition at line 837 of file AssetSystem.cpp.

◆ findFont()

std::string Cogs::Core::findFont ( const StringView family,
int   
)

Definition at line 56 of file GuiContainer.cpp.

◆ findHierarchyWithMatch()

bool Cogs::Core::findHierarchyWithMatch ( const Cogs::ComponentModel::Entity entity,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern 
)

Check if entity with optional matching criteria is found matching entity or a siebling. Uses case invariant string contains.

Parameters
entity- Entity to check
entityNamePattern- If not empty, the entity or sibling should have name containing string
componentNamePattern- If not empty, the entity or sibling should have component with component type containing string
Returns
true if match

Definition at line 148 of file InspectorGuiHelper.cpp.

References Cogs::Reflection::Name::c_str(), Cogs::Core::SceneComponent::children, findHierarchyWithMatch(), Cogs::ComponentModel::Entity::getComponent(), Cogs::ComponentModel::Entity::getComponents(), Cogs::Reflection::Type::getName(), Cogs::ComponentModel::Entity::getName(), and Cogs::ComponentModel::Component::getType().

Referenced by findHierarchyWithMatch().

◆ fixInvalidPathChars()

std::string Cogs::Core::fixInvalidPathChars ( const std::string &  filename)
inline

Remove characters that are not valid for filenames lik "<>:/\?" etc.

Definition at line 125 of file CommandParseHelpers.h.

Referenced by Cogs::Core::ExportCommand::apply().

◆ fontInspector()

void Cogs::Core::fontInspector ( class Context context,
bool *  show 
)

Definition at line 10 of file FontInspector.cpp.

◆ forwardRenderProperties()

void Cogs::Core::forwardRenderProperties ( SceneComponent sceneComp,
const RenderComponent masterRenderComp 
)

Definition at line 38 of file ModelSystem.cpp.

◆ freeTask()

void Cogs::Core::freeTask ( RenderTask task,
RenderTaskContext renderContext 
)

Definition at line 77 of file RenderTaskFactory.cpp.

◆ freeTasks()

void Cogs::Core::freeTasks ( std::vector< RenderTask * > &  tasks,
RenderTaskContext renderContext 
)

Definition at line 483 of file RenderTaskFactory.cpp.

◆ frustumClassifyBoundingBox() [1/2]

Cogs::Core::FrustumPlanes Cogs::Core::frustumClassifyBoundingBox ( const glm::mat4 &  localToClip,
const glm::vec3 &  min,
const glm::vec3 &  max 
)

Definition at line 49 of file FrustumClassification.cpp.

◆ frustumClassifyBoundingBox() [2/2]

Cogs::Core::FrustumPlanes Cogs::Core::frustumClassifyBoundingBox ( const glm::mat4 &  localToClip,
const glm::vec3 &  min,
const glm::vec3 &  max,
const float  discardThresholdSqr,
const float  keepThreshold 
)

Definition at line 10 of file FrustumClassification.cpp.

◆ frustumClassifyVertex()

bool Cogs::Core::frustumClassifyVertex ( FrustumPlanes *  dstPtr,
const glm::mat4 &  matrix,
const glm::vec3 *  positions,
const size_t  count 
)

Definition at line 545 of file RayIntersection.cpp.

◆ gammaDebugger()

void Cogs::Core::gammaDebugger ( class Context ,
bool *  show 
)

Definition at line 29 of file GammaDebugger.cpp.

◆ gatherMaterials()

void Cogs::Core::gatherMaterials ( ComponentModel::Entity entity,
std::unordered_map< EntityId, MaterialInstanceHandle > &  materials 
)

Definition at line 46 of file ResourceCommands.cpp.

◆ generateMeshNormals()

void Cogs::Core::generateMeshNormals ( Mesh mesh)

◆ generateMeshTangents()

void Cogs::Core::generateMeshTangents ( Mesh mesh)

◆ get_bit()

uint32_t Cogs::Core::get_bit ( const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 9 of file Parser.h.

◆ getAllocatedBytes()

size_t Cogs::Core::getAllocatedBytes ( const Memory::Allocator allocator)

Definition at line 97 of file MemoryContext.cpp.

◆ getAllocationCount()

size_t Cogs::Core::getAllocationCount ( const Memory::Allocator allocator)

Definition at line 102 of file MemoryContext.cpp.

◆ getBorderWidth()

float Cogs::Core::getBorderWidth ( const litehtml::borders borders)

Definition at line 206 of file GuiContainer.cpp.

◆ getCharacterQuad()

void Cogs::Core::getCharacterQuad ( const Font::Character chardata,
int  pw,
int  ph,
int  charIndex,
float *  xPos,
float *  yPos,
Font::BakedCharacter q,
int  openGLFill,
int  alignToInteger = 0 
)
inline

Definition at line 135 of file FontManager.cpp.

◆ getCode()

size_t Cogs::Core::getCode ( EffectDescription desc)

Definition at line 14 of file EffectCache.cpp.

◆ getControllingInstance()

const MaterialInstance * Cogs::Core::getControllingInstance ( const MaterialInstance instance,
MaterialFlags::EMaterialFlags  overrideFlag 
)

Definition at line 57 of file GenerateListTask.cpp.

◆ getDefaultMaterialInstance()

MaterialInstanceHandle Cogs::Core::getDefaultMaterialInstance ( Context context)

Definition at line 242 of file DebugGeometryRenderers.cpp.

◆ getDepth()

float Cogs::Core::getDepth ( class Context context,
const EntityId  id,
const glm::vec3  position 
)

Definition at line 28 of file GetDepth.cpp.

◆ getDispatcherArg() [1/2]

void * Cogs::Core::getDispatcherArg ( )

Definition at line 51 of file DynamicComponentSystem.cpp.

◆ getDispatcherArg() [2/2]

template<typename... Args>
void * Cogs::Core::getDispatcherArg ( Args...  args)

Definition at line 40 of file DynamicComponentSystem.cpp.

◆ getDrawContext()

DrawContext Cogs::Core::getDrawContext ( RenderTaskContext renderContext)

Definition at line 127 of file Renderer.cpp.

◆ getExtensionReader()

Cogs::Core::ReaderExtension * Cogs::Core::getExtensionReader ( size_t  code)

Definition at line 481 of file ResourceReader.cpp.

◆ getFormat()

template<typename Element >
TextureFormat Cogs::Core::getFormat ( )
inline

Definition at line 16 of file Texture.h.

◆ getFormat< glm::u8vec4 >()

template<>
TextureFormat Cogs::Core::getFormat< glm::u8vec4 > ( )
inline

Definition at line 19 of file Texture.h.

◆ getFormat< glm::vec3 >()

template<>
TextureFormat Cogs::Core::getFormat< glm::vec3 > ( )
inline

Definition at line 22 of file Texture.h.

◆ getFormat< glm::vec4 >()

template<>
TextureFormat Cogs::Core::getFormat< glm::vec4 > ( )
inline

Definition at line 25 of file Texture.h.

◆ getLodReference()

void Cogs::Core::getLodReference ( Context context,
AssetInstanceData assetInstance,
AssetLodReference lodRef,
Entity ref 
)

Definition at line 563 of file AssetSystem.cpp.

◆ getMaterialFlags()

RenderItemFlags Cogs::Core::getMaterialFlags ( const MaterialInstance materialInstance)

Definition at line 77 of file GenerateListTask.cpp.

◆ getMaterialHash()

size_t Cogs::Core::getMaterialHash ( const MaterialComponent component)

Creates a hash value from the material properties in the given component.

The material property fields in the component are treated as an array of bytes, and are hashed accordingly, giving us an unique value for different sets of properties.

NOTE: Changing the layout of the material component must result in reviewing this method.

Definition at line 25 of file MaterialSystem.cpp.

References Cogs::fnv1a().

Referenced by Cogs::Core::MergeMaterialCommand::apply(), and Cogs::Core::MaterialSystem::update().

◆ getMaterialInstance()

MaterialInstanceHandle Cogs::Core::getMaterialInstance ( Context context)

Definition at line 54 of file ModelSystem.cpp.

◆ getMeshItems() [1/2]

void Cogs::Core::getMeshItems ( Context context,
MeshItems items,
Cogs::Core::EntityIds  entities,
uint32_t  primitiveTypeMask = ~0u 
)

Definition at line 378 of file CommandHelpers.cpp.

◆ getMeshItems() [2/2]

void Cogs::Core::getMeshItems ( Context context,
MeshItems items,
EntityPtr  entity,
uint32_t  primitiveTypeMask = ~0u 
)

Definition at line 359 of file CommandHelpers.cpp.

◆ getMeshSignature()

uint32_t Cogs::Core::getMeshSignature ( const Mesh mesh)

Definition at line 183 of file MergeCommand.cpp.

◆ getOption() [1/3]

float Cogs::Core::getOption ( const std::vector< ParsedValue > &  options,
const StringView key,
const float  defaultValue 
)
inline

Find and get value of option in vector as float. Return default if not found.

Definition at line 45 of file CommandParseHelpers.h.

◆ getOption() [2/3]

size_t Cogs::Core::getOption ( const std::vector< ParsedValue > &  options,
const StringView key,
const size_t  defaultValue 
)
inline

Find and get value of option in vector as size_t. Return default if not found.

Definition at line 31 of file CommandParseHelpers.h.

◆ getOption() [3/3]

StringView Cogs::Core::getOption ( const std::vector< ParsedValue > &  options,
const StringView key,
const StringView defaultValue = "" 
)
inline

◆ getPeakBytes()

size_t Cogs::Core::getPeakBytes ( const Memory::Allocator allocator)

Definition at line 107 of file MemoryContext.cpp.

◆ getPeakCount()

size_t Cogs::Core::getPeakCount ( const Memory::Allocator allocator)

Definition at line 112 of file MemoryContext.cpp.

◆ getPool()

template<typename ResourceType >
Collections::Pool< ResourceType > & Cogs::Core::getPool ( )

Definition at line 48 of file RenderTaskFactory.cpp.

◆ getRasterizerState()

COGSCORE_DLL_API uint16_t Cogs::Core::getRasterizerState ( Renderer renderer,
const RenderItem renderBlock,
const RenderPassOptions passOptions,
bool  flipWindingOrder,
bool  forceBlockWinding 
)

Definition at line 258 of file FilterListTask.cpp.

◆ getRenderTaskContext()

RenderTaskContext Cogs::Core::getRenderTaskContext ( Renderer renderer)

Definition at line 112 of file Renderer.cpp.

◆ getResourceManifest()

std::vector< std::string > Cogs::Core::getResourceManifest ( class Context context)

Definition at line 7 of file ResourceManifest.cpp.

◆ getResourceName()

std::string Cogs::Core::getResourceName ( Context context,
ResourceHandleBase fieldValue,
std::unordered_set< ResourceHandleBase > *  resources 
)

Definition at line 189 of file EntityWriter.cpp.

◆ getResourceType() [1/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Asset )
constexpr

Definition at line 24 of file ResourceManager.h.

◆ getResourceType() [2/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const BufferResource )
constexpr

Definition at line 30 of file ResourceManager.h.

◆ getResourceType() [3/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Effect )
constexpr

Definition at line 27 of file ResourceManager.h.

◆ getResourceType() [4/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Font )
constexpr

Definition at line 32 of file ResourceManager.h.

◆ getResourceType() [5/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Material )
constexpr

Definition at line 28 of file ResourceManager.h.

◆ getResourceType() [6/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const MaterialInstance )
constexpr

Definition at line 29 of file ResourceManager.h.

◆ getResourceType() [7/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Mesh )
constexpr

Definition at line 31 of file ResourceManager.h.

◆ getResourceType() [8/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Model )
constexpr

Definition at line 25 of file ResourceManager.h.

◆ getResourceType() [9/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const ResourceBase )
constexpr

Definition at line 23 of file ResourceManager.h.

◆ getResourceType() [10/10]

constexpr ResourceTypes Cogs::Core::getResourceType ( const Texture )
constexpr

Definition at line 26 of file ResourceManager.h.

◆ getRotation()

glm::quat Cogs::Core::getRotation ( glm::vec3  src,
glm::vec3  dest 
)
inline

Definition at line 15 of file Math.h.

◆ getScriptContext()

ScriptContextHandle Cogs::Core::getScriptContext ( Context context,
Entity entity 
)

Definition at line 468 of file GuiContainer.cpp.

◆ getTerrainData()

TerrainData * Cogs::Core::getTerrainData ( Context context,
EntityId  id 
)

Definition at line 25 of file TerrainFunctions.cpp.

◆ getTransparencyState()

void COGSCORE_DLL_API Cogs::Core::getTransparencyState ( RenderStates ,
const MaterialInstance materialInstance,
RenderItem renderItem 
)

Definition at line 66 of file GenerateListTask.cpp.

◆ getUniqueHeader()

std::string Cogs::Core::getUniqueHeader ( const std::string &  header)

Definition at line 82 of file InspectorGuiHelper.cpp.

◆ getUniqueMaterialName()

std::string Cogs::Core::getUniqueMaterialName ( Context context)

Definition at line 165 of file EntityWriter.cpp.

◆ getWorldToScreenScale()

float Cogs::Core::getWorldToScreenScale ( Context ,
const CameraData cameraData,
const glm::vec3 &  worldCenter,
float  normRadius 
)

Definition at line 44 of file DepthAxisSystem.cpp.

◆ guiBegin()

void Cogs::Core::guiBegin ( const std::string &  title,
bool *  show 
)

Definition at line 68 of file InspectorGuiHelper.cpp.

◆ guiEnd()

void Cogs::Core::guiEnd ( )

Definition at line 76 of file InspectorGuiHelper.cpp.

◆ HandleIsValid() [1/2]

template<typename T >
bool Cogs::Core::HandleIsValid ( const ResourceHandle_t< T > &  handle)
inline

◆ HandleIsValid() [2/2]

bool Cogs::Core::HandleIsValid ( const ResourceHandleBase handle)
inline

Definition at line 217 of file ResourceHandle.h.

◆ handleResourceAlias()

bool Cogs::Core::handleResourceAlias ( const RenderResourceDefinition r,
const std::string &  resourceName,
const std::string &  prefix,
RenderTaskResources pipelineResources 
)

Definition at line 368 of file RenderPipelineFactory.cpp.

◆ hasBucket()

bool Cogs::Core::hasBucket ( BucketMask  bucketMask,
BucketType  bucket 
)
inline

Definition at line 78 of file RenderList.h.

◆ hash()

constexpr size_t Cogs::Core::hash ( const ShapeDefinition definition,
size_t  hashValue = Cogs::hash() 
)
constexpr

Definition at line 82 of file ShapeType.h.

◆ hasRadius()

bool Cogs::Core::hasRadius ( const litehtml::border_radiuses radius)

Definition at line 201 of file GuiContainer.cpp.

◆ hrd_parameters()

void Cogs::Core::hrd_parameters ( const uint8_t *  ,
size_t  ,
uint32_t  commonInfPresentFlag,
uint32_t  maxNumbSubLayersMinus1 
)

Definition at line 235 of file H265Parser.cpp.

◆ inheritMaterialVariants()

bool Cogs::Core::inheritMaterialVariants ( std::vector< ShaderVariantDefinition > &  definitionVariants,
std::span< const ShaderVariantDefinition sourceVariants,
const Cogs::StringView definitionName,
const Cogs::StringView sourceName,
bool  errorOnExisting = true 
)

Definition at line 1494 of file MaterialReader.cpp.

◆ initializeAssetInstance()

void Cogs::Core::initializeAssetInstance ( AssetInstanceData assetInstance)

Definition at line 365 of file AssetSystem.cpp.

◆ initializeEngineBuffers()

void Cogs::Core::initializeEngineBuffers ( IBuffers buffers,
ICapabilities capabilites,
EngineBuffers engineBuffers 
)

Definition at line 19 of file EngineBuffers.cpp.

◆ initializeTypes()

void Cogs::Core::initializeTypes ( )

Definition at line 83 of file Types.cpp.

◆ initRenderPassOptions()

COGSCORE_DLL_API RenderPassOptions Cogs::Core::initRenderPassOptions ( const RenderItem renderBlock,
const CameraData camData 
)

Definition at line 243 of file FilterListTask.cpp.

◆ inputCallback()

int Cogs::Core::inputCallback ( ImGuiInputTextCallbackData *  )

Definition at line 27 of file VariableInspector.cpp.

◆ inputInspector()

void Cogs::Core::inputInspector ( class Context context,
bool *  show 
)

Definition at line 13 of file InputInspector.cpp.

◆ intersectMesh()

bool Cogs::Core::intersectMesh ( std::vector< RayIntersectionHit > &  hits,
std::vector< FrustumPlanes > &  scratch,
const glm::mat4 &  localPickMatrix,
const Mesh mesh,
uint32_t  startIndex = 0,
uint32_t  vertexCount = -1,
uint32_t  subMeshIndex = -1 
)

Definition at line 397 of file RayIntersection.cpp.

◆ isCharacter()

bool Cogs::Core::isCharacter ( char  c)

Definition at line 812 of file Parsing.cpp.

◆ isLine()

bool Cogs::Core::isLine ( PrimitiveType::EPrimitiveType  primitiveType)
inline

Check if the given primitive type represents lines.

Definition at line 241 of file Mesh.h.

References Cogs::PrimitiveType::LineList.

Referenced by Cogs::Core::MaterialSystem::update().

◆ isNumber()

bool Cogs::Core::isNumber ( char  c)

Definition at line 816 of file Parsing.cpp.

◆ isOutside()

bool Cogs::Core::isOutside ( AssetLodReference lodReference,
const Geometry::BoundingBox &  bbox 
)

Definition at line 634 of file AssetSystem.cpp.

◆ isPipelineFresh()

bool Cogs::Core::isPipelineFresh ( RenderTaskContext renderContext,
const RenderPipeline pipeline 
)

Definition at line 754 of file RenderPipelineFactory.cpp.

◆ loadCogsBin1()

bool Cogs::Core::loadCogsBin1 ( Context context,
const ModelLoadInfo loadInfo,
std::unique_ptr< FileContents contents 
)

Definition at line 63 of file CogsBin1Loader.cpp.

◆ loadCogsBin3()

bool Cogs::Core::loadCogsBin3 ( Context context,
const ModelLoadInfo loadInfo,
std::unique_ptr< FileContents contents 
)

Definition at line 872 of file CogsBin3Loader.cpp.

◆ localSphereRadiusInScreenSpace()

glm::vec2 Cogs::Core::localSphereRadiusInScreenSpace ( const glm::mat4 &  localToClip,
const glm::mat4 &  clipToLocal,
const glm::vec4 &  clipPosition,
const float  localRadius 
)

Given a screen space reference position and a local space radius, find the corresponding screen space radii (along screen x and y).

Definition at line 7 of file TessellationPredicates.cpp.

Referenced by Cogs::Core::TrajectoryCrossSectionsSystem::update(), and Cogs::Core::MeshGeneratorSystem::update().

◆ LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > & >()

template<>
void Cogs::Core::LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > & > ( std::vector< PositionNormalTexVertex > &  arg)
inline

Definition at line 96 of file LoftedCrossSectionsComponent.h.

◆ LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > >()

template<>
void Cogs::Core::LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalTexVertex > > ( std::vector< PositionNormalTexVertex > &&  arg)
inline

Definition at line 102 of file LoftedCrossSectionsComponent.h.

◆ LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > & >()

template<>
void Cogs::Core::LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > & > ( std::vector< PositionNormalVertex > &  arg)
inline

Definition at line 84 of file LoftedCrossSectionsComponent.h.

◆ LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > >()

template<>
void Cogs::Core::LoftedCrossSectionsComponent::setVertices< std::vector< PositionNormalVertex > > ( std::vector< PositionNormalVertex > &&  arg)
inline

Definition at line 90 of file LoftedCrossSectionsComponent.h.

◆ makeDateString()

std::string Cogs::Core::makeDateString ( std::time_t &  t,
const StringView fmt 
)
inline

Definition at line 76 of file CommandParseHelpers.h.

◆ matchChars()

bool Cogs::Core::matchChars ( const char  c,
const StringView chars 
)

Definition at line 253 of file Parsing.cpp.

◆ materialInspector()

void Cogs::Core::materialInspector ( class Context context,
bool *  show 
)

Definition at line 221 of file MaterialInspector.cpp.

◆ materialInstanceInspector()

void Cogs::Core::materialInstanceInspector ( class Context context,
bool *  show 
)

Definition at line 241 of file MaterialInspector.cpp.

◆ meshInspector()

void Cogs::Core::meshInspector ( class Context context,
bool *  show 
)

Definition at line 26 of file MeshInspector.cpp.

◆ modelInspector()

void Cogs::Core::modelInspector ( class Context context,
bool *  show 
)

Definition at line 18 of file ModelInspector.cpp.

◆ more_rbsp_data()

uint32_t Cogs::Core::more_rbsp_data ( const uint8_t *  data,
size_t  size,
size_t  bit 
)
inline

Definition at line 98 of file Parser.h.

◆ next_bits()

uint32_t Cogs::Core::next_bits ( size_t  n,
const uint8_t *  data,
size_t  bit 
)
inline

Definition at line 24 of file Parser.h.

◆ operator&() [1/2]

CPUFeature Cogs::Core::operator& ( CPUFeature  lhs,
CPUFeature  rhs 
)
inline

Bitmask convenience operator.

Definition at line 93 of file Features.h.

◆ operator&() [2/2]

FrustumPlanes Cogs::Core::operator& ( FrustumPlanes  lhs,
FrustumPlanes  rhs 
)
inline

Bitmask convenience operator.

Definition at line 41 of file FrustumClassification.h.

◆ operator&=() [1/2]

CPUFeature & Cogs::Core::operator&= ( CPUFeature &  lhs,
CPUFeature  rhs 
)
inline

Bitmask convenience operator.

Definition at line 99 of file Features.h.

◆ operator&=() [2/2]

FrustumPlanes & Cogs::Core::operator&= ( FrustumPlanes &  lhs,
FrustumPlanes  rhs 
)
inline

Bitmask convenience operator.

Definition at line 47 of file FrustumClassification.h.

◆ operator|() [1/2]

CPUFeature Cogs::Core::operator| ( CPUFeature  lhs,
CPUFeature  rhs 
)
inline

Bitmask convenience operator.

Definition at line 80 of file Features.h.

◆ operator|() [2/2]

FrustumPlanes Cogs::Core::operator| ( FrustumPlanes  lhs,
FrustumPlanes  rhs 
)
inline

Bitmask convenience operator.

Definition at line 28 of file FrustumClassification.h.

◆ operator|=() [1/2]

CPUFeature & Cogs::Core::operator|= ( CPUFeature &  lhs,
CPUFeature  rhs 
)
inline

Bitmask convenience operator.

Definition at line 86 of file Features.h.

◆ operator|=() [2/2]

FrustumPlanes & Cogs::Core::operator|= ( FrustumPlanes &  lhs,
FrustumPlanes  rhs 
)
inline

Bitmask convenience operator.

Definition at line 34 of file FrustumClassification.h.

◆ packMeshItems()

void Cogs::Core::packMeshItems ( Context context,
std::vector< MeshHandle > &  originalMeshes,
MeshReps &  meshes,
MeshItems items,
bool  update = true 
)

Definition at line 545 of file CommandHelpers.cpp.

◆ parse_ae()

uint32_t Cogs::Core::parse_ae ( const uint8_t *  ,
size_t &   
)
inline

Definition at line 52 of file Parser.h.

◆ parse_b()

uint32_t Cogs::Core::parse_b ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 57 of file Parser.h.

◆ parse_f()

uint32_t Cogs::Core::parse_f ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 58 of file Parser.h.

◆ parse_i()

int32_t Cogs::Core::parse_i ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 59 of file Parser.h.

◆ parse_mpeg_ts()

void COGSCORE_DLL_API Cogs::Core::parse_mpeg_ts ( MPEGTransportStreamData parse,
uint8_t *  data,
size_t  size 
)

Definition at line 721 of file MPEG_TS.cpp.

◆ parse_se()

int32_t Cogs::Core::parse_se ( const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 60 of file Parser.h.

◆ parse_u()

uint32_t Cogs::Core::parse_u ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 66 of file Parser.h.

◆ parse_u64()

uint64_t Cogs::Core::parse_u64 ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 67 of file Parser.h.

◆ parse_ue() [1/2]

uint32_t Cogs::Core::parse_ue ( const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 68 of file Parser.h.

◆ parse_ue() [2/2]

uint32_t Cogs::Core::parse_ue ( const uint8_t *  data,
size_t &  bit,
size_t  size 
)
inline

Definition at line 77 of file Parser.h.

◆ parse_ue64()

uint64_t Cogs::Core::parse_ue64 ( const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 88 of file Parser.h.

◆ parseBool()

bool Cogs::Core::parseBool ( const StringView token,
bool  defaultValue = false 
)

Definition at line 526 of file Parsing.cpp.

◆ parseBool_()

bool Cogs::Core::parseBool_ ( bool &  rv,
const StringView token 
)

Parse a bool putting return value in rv and returning whether or not parsing was successful.

Definition at line 538 of file Parsing.cpp.

References Cogs::hash(), and Cogs::StringView::hashLowercase().

◆ parseCloudJs()

bool Cogs::Core::parseCloudJs ( Context ,
PotreeData poData,
const Cogs::FileContents data 
)

Definition at line 540 of file ParseMetadataFile.cpp.

◆ parseDefinition()

bool Cogs::Core::parseDefinition ( Context context,
const Value &  jsonDefinition,
RenderPipelineDefinition definition 
)

Definition at line 276 of file RenderPipelineReader.cpp.

◆ parseDouble()

double Cogs::Core::parseDouble ( const StringView token,
double  defaultValue = 0 
)

Definition at line 492 of file Parsing.cpp.

◆ parseEnum() [1/2]

int Cogs::Core::parseEnum ( const StringView token,
const Reflection::Type type,
int  defaultValue 
)

Definition at line 774 of file Parsing.cpp.

◆ parseEnum() [2/2]

template<typename T >
T Cogs::Core::parseEnum ( const StringView token,
defaultValue = T() 
)

Definition at line 125 of file Parsing.h.

◆ parseEnumFlags() [1/3]

int Cogs::Core::parseEnumFlags ( const char *&  current,
const char *  end,
const Reflection::Type type,
int  defaultValue 
)

Definition at line 821 of file Parsing.cpp.

◆ parseEnumFlags() [2/3]

int Cogs::Core::parseEnumFlags ( const StringView token,
const Reflection::Type type,
int  defaultValue 
)

Definition at line 881 of file Parsing.cpp.

◆ parseEnumFlags() [3/3]

template<typename T >
T Cogs::Core::parseEnumFlags ( const StringView token,
defaultValue = T() 
)

Definition at line 131 of file Parsing.h.

◆ parseFloat()

float Cogs::Core::parseFloat ( const StringView token,
float  defaultValue = 0 
)

Definition at line 499 of file Parsing.cpp.

◆ parseInt()

int32_t Cogs::Core::parseInt ( const StringView token,
int32_t  defaultValue = 0 
)

Definition at line 504 of file Parsing.cpp.

◆ parseInt_()

bool Cogs::Core::parseInt_ ( int32_t &  rv,
const StringView token 
)

Parse an int putting return value in rv and returning whether or not parsing was successful.

Definition at line 559 of file Parsing.cpp.

References Cogs::StringView::data(), Cogs::StringView::length(), and Cogs::StringView::size().

◆ parseISO8601() [1/2]

uint64_t Cogs::Core::parseISO8601 ( const StringView iso8601)

Parse ISO 8601 timestamps.

Returns a UTC millisecond count since 1970-01-01 00:00:00, with an optional timezone millisecond offset in tzOffset.

Definition at line 575 of file Parsing.cpp.

References parseISO8601().

Referenced by parseISO8601().

◆ parseISO8601() [2/2]

uint64_t Cogs::Core::parseISO8601 ( const StringView iso8601,
int &  tzOffset 
)

Definition at line 580 of file Parsing.cpp.

◆ parseJson() [1/3]

Document Cogs::Core::parseJson ( class Context context,
const StringView fileName,
JsonParseFlags  flags = JsonParseFlags::None 
)

Definition at line 162 of file JsonParser.cpp.

◆ parseJson() [2/3]

Document Cogs::Core::parseJson ( class Context context,
std::unique_ptr< FileContents contents,
JsonParseFlags  flags = JsonParseFlags::None 
)

Definition at line 183 of file JsonParser.cpp.

◆ parseJson() [3/3]

Document Cogs::Core::parseJson ( const StringView content,
JsonParseFlags  flags 
)

Definition at line 79 of file JsonParser.cpp.

◆ parseMaterial()

bool Cogs::Core::parseMaterial ( class Context context,
const StringView path,
MaterialDefinition definition 
)

Definition at line 1432 of file MaterialReader.cpp.

◆ parseMaterialInstanceProperty()

void Cogs::Core::parseMaterialInstanceProperty ( const Value &  value,
const StringView key,
const Material material,
FieldValue propertyValue,
ExpressionContext ec 
)

Definition at line 221 of file ResourceReader.cpp.

◆ parseOptions()

void Cogs::Core::parseOptions ( const Value &  jsonOptions,
RenderPipelineDefinition definition 
)

Definition at line 40 of file RenderPipelineReader.cpp.

◆ parseParameters()

RenderTaskParameters Cogs::Core::parseParameters ( RenderTaskContext renderContext,
const RenderTaskDefinition taskDefinition,
const PipelineOptions &  options 
)

Definition at line 195 of file RenderTaskFactory.cpp.

◆ parsePipeline()

Cogs::Core::RenderPipelineDefinition Cogs::Core::parsePipeline ( class Context context,
const StringView resource,
bool  isContent = false 
)

Definition at line 344 of file RenderPipelineReader.cpp.

◆ parseQueryString()

void Cogs::Core::parseQueryString ( std::vector< ParsedValue > &  attributes,
StringView  query 
)

Definition at line 936 of file Parsing.cpp.

◆ parseResource()

void Cogs::Core::parseResource ( const Value &  value,
RenderResourceDefinition resource,
const std::string &   
)

Definition at line 153 of file RenderPipelineReader.cpp.

◆ parseResources()

bool Cogs::Core::parseResources ( const Value &  jsonResources,
RenderPipelineDefinition definition,
const std::string &  condition = "" 
)

Definition at line 184 of file RenderPipelineReader.cpp.

◆ parseResourceType()

RenderResourceType Cogs::Core::parseResourceType ( const std::string &  str)

Definition at line 25 of file RenderPipelineReader.cpp.

◆ parseSlots()

void Cogs::Core::parseSlots ( const Value &  value,
std::vector< RenderTaskSlot > &  slots 
)

Definition at line 206 of file RenderPipelineReader.cpp.

◆ parseStringValue()

void Cogs::Core::parseStringValue ( const StringView value,
ParsedValue v 
)

Definition at line 342 of file Parsing.cpp.

◆ parseTask()

void Cogs::Core::parseTask ( const Value &  jsonTask,
RenderTaskDefinition task,
const std::string &   
)

Definition at line 221 of file RenderPipelineReader.cpp.

◆ parseTasks()

bool Cogs::Core::parseTasks ( const Value &  jsonTasks,
RenderPipelineDefinition definition,
const std::string &  condition = "" 
)

Definition at line 253 of file RenderPipelineReader.cpp.

◆ parseTextureFormat()

Cogs::TextureFormat Cogs::Core::parseTextureFormat ( const StringView str,
Cogs::TextureFormat  defaultFormat = TextureFormat::R8G8B8A8_UNORM_SRGB 
)

Definition at line 480 of file Parsing.cpp.

◆ parseUInt()

uint32_t Cogs::Core::parseUInt ( const StringView token,
uint32_t  defaultValue = 0 
)

Definition at line 515 of file Parsing.cpp.

◆ parseValue()

void Cogs::Core::parseValue ( const StringView key,
const Value &  value,
ParsedValue v 
)

Definition at line 69 of file RenderPipelineReader.cpp.

◆ parseValues() [1/12]

void Cogs::Core::parseValues ( bool *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 982 of file Parsing.cpp.

◆ parseValues() [2/12]

void Cogs::Core::parseValues ( double *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 967 of file Parsing.cpp.

◆ parseValues() [3/12]

void Cogs::Core::parseValues ( float *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 962 of file Parsing.cpp.

◆ parseValues() [4/12]

void Cogs::Core::parseValues ( int *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 972 of file Parsing.cpp.

◆ parseValues() [5/12]

void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
bool *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 1008 of file Parsing.cpp.

◆ parseValues() [6/12]

void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
double *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 993 of file Parsing.cpp.

◆ parseValues() [7/12]

void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
float *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 988 of file Parsing.cpp.

◆ parseValues() [8/12]

void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
int *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 998 of file Parsing.cpp.

◆ parseValues() [9/12]

template<typename T , typename Func >
void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
T *  values,
const TokenStream &  tokens,
size_t  expected,
Func  f 
)

Definition at line 908 of file Parsing.cpp.

◆ parseValues() [10/12]

void Cogs::Core::parseValues ( std::vector< std::pair< size_t, std::string > > &  expressions,
uint32_t *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 1003 of file Parsing.cpp.

◆ parseValues() [11/12]

template<typename T , typename Func >
void Cogs::Core::parseValues ( T *  values,
const TokenStream &  tokens,
size_t  expected,
Func  f 
)

Definition at line 894 of file Parsing.cpp.

◆ parseValues() [12/12]

void Cogs::Core::parseValues ( uint32_t *  values,
const TokenStream &  tokens,
size_t  expected 
)

Definition at line 977 of file Parsing.cpp.

◆ peek_bit()

uint32_t Cogs::Core::peek_bit ( const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 17 of file Parser.h.

◆ permutationInspector()

void Cogs::Core::permutationInspector ( class Context context,
bool *  show 
)

Definition at line 594 of file PipelineInspector.cpp.

◆ pic_parameter_set_nalu() [1/2]

void Cogs::Core::pic_parameter_set_nalu ( H264ParseData parse,
const uint8_t *  pps,
size_t  pps_size 
)

Definition at line 1449 of file H264Parser.cpp.

◆ pic_parameter_set_nalu() [2/2]

void Cogs::Core::pic_parameter_set_nalu ( H265ParseData parse,
const uint8_t *  pps,
size_t  pps_size 
)

Definition at line 643 of file H265Parser.cpp.

◆ pic_parameter_set_rbsp()

void Cogs::Core::pic_parameter_set_rbsp ( H265ParseData parse,
uint8_t *  data,
size_t  size 
)

Definition at line 532 of file H265Parser.cpp.

◆ pipelineHash()

size_t Cogs::Core::pipelineHash ( RenderTaskContext renderContext,
const RenderPipeline pipeline 
)

Definition at line 703 of file RenderPipelineFactory.cpp.

◆ pipelineInspector()

void Cogs::Core::pipelineInspector ( class Context context,
bool *  show 
)

Definition at line 540 of file PipelineInspector.cpp.

◆ populateObjectBuffer()

size_t Cogs::Core::populateObjectBuffer ( const DrawContext drawContext,
const RenderItem items,
size_t  o,
size_t  n 
)

Definition at line 392 of file RenderStateUpdater.cpp.

◆ processInFlightRequests()

void Cogs::Core::processInFlightRequests ( Context context,
AssetSystemData systemData 
)

Definition at line 1655 of file AssetSystem.cpp.

◆ processPendingRequests()

size_t Cogs::Core::processPendingRequests ( Context context,
AssetSystemData systemData,
ModelManager modelManager,
AssetSystemVector< AssetModelRequest * > &  pendingRequests,
AssetSystemVector< AssetModelRequest * > &  inFlightRequests,
const size_t  maxInFlight,
const size_t  maxProcessed 
)

Definition at line 1685 of file AssetSystem.cpp.

◆ profile_tier_level()

void Cogs::Core::profile_tier_level ( H265ProfileTierLevel tier,
const uint8_t *  data,
size_t &  bit,
uint32_t  profilePresentFlag,
uint32_t  maxNumSubLayersMinus1 
)

Definition at line 53 of file H265Parser.cpp.

◆ profileInspector()

void Cogs::Core::profileInspector ( class Context context,
bool *  showProfiler 
)

Definition at line 105 of file ProfileInspector.cpp.

◆ project()

glm::vec3 Cogs::Core::project ( const CameraData data,
const glm::vec3 &  in 
)

Definition at line 35 of file DepthAxisSystem.cpp.

◆ pullCameraMatrices()

void Cogs::Core::pullCameraMatrices ( Context context,
AssetSystemData systemData 
)

Definition at line 1748 of file AssetSystem.cpp.

◆ read_bits()

uint32_t Cogs::Core::read_bits ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 32 of file Parser.h.

◆ read_bits64()

uint64_t Cogs::Core::read_bits64 ( size_t  n,
const uint8_t *  data,
size_t &  bit 
)
inline

Definition at line 40 of file Parser.h.

◆ readArray() [1/2]

uint32_t Cogs::Core::readArray ( const Value &  value,
float *  dst,
unsigned  N,
ExpressionContext ev 
)
inline

Definition at line 33 of file ReaderCommon.h.

◆ readArray() [2/2]

template<int S, typename T , glm::precision P, template< int, typename, glm::precision > class vecType>
uint32_t Cogs::Core::readArray ( const Value &  value,
vecType< S, T, P > &  result,
ExpressionContext ev 
)

Definition at line 48 of file ReaderCommon.h.

◆ readAsset()

bool Cogs::Core::readAsset ( class Context context,
StringView  fileName,
AssetLoadFlags  flags = AssetLoadFlags::None,
ComponentModel::Entity root = nullptr 
)

Definition at line 170 of file AssetReader.cpp.

◆ readAssetDefinition()

void Cogs::Core::readAssetDefinition ( ReaderContext ,
const Value &  jsonResource,
ResourceDefinition assetDefinition 
)

Definition at line 140 of file ResourceReader.cpp.

◆ readAssetDefinitionFromFile()

bool Cogs::Core::readAssetDefinitionFromFile ( class Context context,
StringView  fileName,
AssetDefinition assetDefinition,
bool  compressed = false 
)

Definition at line 276 of file AssetReader.cpp.

◆ readAssetDefinitionFromFileContents()

bool Cogs::Core::readAssetDefinitionFromFileContents ( class Context context,
std::unique_ptr< FileContents contents,
AssetDefinition assetDefinition,
bool  compressed = false 
)

Definition at line 283 of file AssetReader.cpp.

◆ readAssetFromString()

bool Cogs::Core::readAssetFromString ( class Context context,
StringView  contents,
AssetLoadFlags  flags = AssetLoadFlags::None,
ComponentModel::Entity root = nullptr 
)

Definition at line 195 of file AssetReader.cpp.

◆ readBatch()

Batch Cogs::Core::readBatch ( Context context,
const StringView path 
)

Definition at line 120 of file Batch.cpp.

◆ readEntityDefaults()

void Cogs::Core::readEntityDefaults ( Context context,
const Value &  value,
std::vector< FieldValue > &  defaultValues,
ExpressionContext ec 
)

Definition at line 47 of file EntityReader.cpp.

◆ readEntityDefinition() [1/3]

void Cogs::Core::readEntityDefinition ( const StringView content,
EntityStore store 
)

Read an entity definition from the JSON string given in content, and add it to the store.

Definition at line 473 of file EntityReader.cpp.

◆ readEntityDefinition() [2/3]

void Cogs::Core::readEntityDefinition ( EntityStore store,
const StringView name,
const Value &  value 
)

Definition at line 387 of file EntityReader.cpp.

◆ readEntityDefinition() [3/3]

bool Cogs::Core::readEntityDefinition ( EntityStore store,
const StringView name,
const Value &  value,
struct EntityDefinition definition 
)

Definition at line 400 of file EntityReader.cpp.

◆ readExtensions()

bool Cogs::Core::readExtensions ( Context ,
const Value &  jsonExtensions,
AssetLoadFlags   
)

Definition at line 54 of file AssetReader.cpp.

◆ readFieldValue()

bool Cogs::Core::readFieldValue ( Context context,
const Value &  jsonValue,
const Reflection::Type type,
const StringView fieldName,
std::vector< FieldValue > &  fieldValues,
ExpressionContext ec 
)

Definition at line 61 of file EntityReader.cpp.

◆ readFieldValues()

bool Cogs::Core::readFieldValues ( Context context,
const Value &  jsonValue,
const StringView componentName,
std::vector< FieldValue > &  fieldValues,
ExpressionContext ec 
)

Definition at line 350 of file EntityReader.cpp.

◆ readImports()

bool Cogs::Core::readImports ( Context context,
const Value &  jsonImports,
AssetLoadFlags  flags,
ComponentModel::Entity root 
)

Definition at line 78 of file AssetReader.cpp.

◆ readMaterialInstanceDefinition()

void Cogs::Core::readMaterialInstanceDefinition ( ReaderContext rc,
const Value &  value,
ResourceDefinition resourceDefinition 
)

Definition at line 288 of file ResourceReader.cpp.

◆ readMaterialInstanceField()

void Cogs::Core::readMaterialInstanceField ( Context context,
const Value &  value,
FieldValue fieldValue,
ExpressionContext ec 
)

Definition at line 23 of file EntityReader.cpp.

◆ readMaterialProperties()

bool Cogs::Core::readMaterialProperties ( Context context,
const Value &  jsonValue,
MaterialProperties materialProperties,
bool  isShared 
)

Definition at line 1382 of file MaterialReader.cpp.

◆ readMaterialVariants()

bool Cogs::Core::readMaterialVariants ( Context context,
const Value &  value,
std::vector< ShaderVariantDefinition > &  variants,
bool  isShared = false 
)

Definition at line 1397 of file MaterialReader.cpp.

◆ readMesh()

StringView Cogs::Core::readMesh ( Context context,
ResourceDefinition definition,
const Value &  jsonResource 
)

Definition at line 32 of file ResourceReader.cpp.

◆ readModelDefinition()

void Cogs::Core::readModelDefinition ( ReaderContext ,
const Value &  jsonResource,
ResourceDefinition definition 
)

Definition at line 146 of file ResourceReader.cpp.

◆ readResource()

void Cogs::Core::readResource ( Context context,
const StringView name,
const Value &  jsonResource 
)

Definition at line 366 of file ResourceReader.cpp.

◆ readResourceDefinition()

void Cogs::Core::readResourceDefinition ( Context context,
const StringView name,
const Value &  jsonResource,
ResourceDefinition definition 
)

Definition at line 426 of file ResourceReader.cpp.

◆ readResourceDefinitions()

void Cogs::Core::readResourceDefinitions ( Context context,
const Value &  jsonResources,
int  flags,
AssetDefinition asset 
)

Definition at line 511 of file ResourceReader.cpp.

◆ readResources()

void Cogs::Core::readResources ( Context context,
const Value &  jsonResources,
int  flags = 0 
)

Definition at line 499 of file ResourceReader.cpp.

◆ readScene()

void Cogs::Core::readScene ( class Context context,
const Value &  jsonScene,
AssetLoadFlags  flags,
ComponentModel::Entity root 
)

Parse JSON description of Entities in Cogs Scene file and create Entities defined in scene.

Parameters
jsonSceneJSON Array element containing Entity defs.
flagsNot currently used.
rootOptional parent Entity for scene.

Definition at line 570 of file SceneReader.cpp.

References readSceneDefinition().

◆ readSceneDefinition()

void Cogs::Core::readSceneDefinition ( class Context context,
const Value &  jsonScene,
AssetLoadFlags  flags,
AssetDefinition asset 
)

Parse JSON description of Entities in Cogs Scene. Store contents in asset param.

Definition at line 602 of file SceneReader.cpp.

Referenced by Cogs::Core::PasteEntityCommand::apply(), and readScene().

◆ readSceneEntityDefinition()

void Cogs::Core::readSceneEntityDefinition ( Context context,
const Value &  jsonEntity,
AssetDefinition asset,
SceneDefinition sceneDef,
uint32_t  entityId,
struct ExpressionContext ev 
)

Definition at line 276 of file SceneReader.cpp.

◆ readSize_t()

void Cogs::Core::readSize_t ( ExpressionValue< size_t > &  value,
ExpressionContext ev,
const std::string &  prefix,
const ParsedValue parsedValue 
)

Definition at line 225 of file Expressions.cpp.

◆ readTemplates()

void Cogs::Core::readTemplates ( Context context,
const Value &  jsonTemplates,
AssetLoadFlags   
)

Definition at line 42 of file AssetReader.cpp.

◆ readTextureDefinition()

void Cogs::Core::readTextureDefinition ( ReaderContext ,
const Value &  jsonResource,
ResourceDefinition definition 
)

Definition at line 152 of file ResourceReader.cpp.

◆ readValue() [1/2]

template<typename T >
T Cogs::Core::readValue ( const Value &  value,
ExpressionContext ev 
)

Definition at line 28 of file ReaderCommon.h.

◆ readValue() [2/2]

template<typename T >
T Cogs::Core::readValue ( const Value &  value,
defaultValue,
ExpressionContext ev 
)

Definition at line 16 of file ReaderCommon.h.

◆ readVariables()

void Cogs::Core::readVariables ( Variables variables,
const Value &  jsonVariables,
const std::string &  sectionHeader,
bool  defaults = false 
)

Definition at line 16 of file VariableReader.cpp.

◆ registerExtensionReader()

void Cogs::Core::registerExtensionReader ( Context context,
const StringView resourceType,
const Reflection::Type handleType,
ReaderExtension  extension 
)

Definition at line 492 of file ResourceReader.cpp.

◆ registerResourceFlagTypes()

void Cogs::Core::registerResourceFlagTypes ( )

Definition at line 20 of file ResourceFlags.cpp.

◆ reindex()

void Cogs::Core::reindex ( const std::vector< int32_t > &  inputIndexes,
Mesh mesh,
bool  isLine 
)

Definition at line 121 of file IndexConversion.cpp.

◆ releaseGpuResource()

template<typename RenderResourceType >
RenderResource * Cogs::Core::releaseGpuResource ( ResourceBase resource,
Renderer renderer 
)

Definition at line 330 of file RenderResources.cpp.

◆ releasePipeline()

void Cogs::Core::releasePipeline ( RenderTaskContext renderContext,
RenderPipeline pipeline 
)

Definition at line 759 of file RenderPipelineFactory.cpp.

◆ remapIndices()

void Cogs::Core::remapIndices ( Context context,
MeshRep rep,
const std::vector< uint32_t > &  map 
)

Definition at line 430 of file CommandHelpers.cpp.

◆ remapVertices()

void Cogs::Core::remapVertices ( Context context,
MeshRep rep,
const std::vector< uint32_t > &  unique 
)

Definition at line 388 of file CommandHelpers.cpp.

◆ RemoveEntitiesWithAncestors()

void Cogs::Core::RemoveEntitiesWithAncestors ( Context context,
const EntityIds &  entityIds,
EntityIds &  output 
)

Definition at line 480 of file EditorCommand.cpp.

◆ renderCallback()

void Cogs::Core::renderCallback ( RenderTaskContext renderingContext,
DrawContext drawContext,
const RenderItem item 
)

Definition at line 18 of file SeaCurrentsRenderer.cpp.

◆ renderingStatsInspector()

void Cogs::Core::renderingStatsInspector ( class Context context,
bool *  show 
)

Definition at line 58 of file RenderingStatsInspector.cpp.

◆ replaceFileMacros()

std::string Cogs::Core::replaceFileMacros ( std::string  outputName,
const std::vector< ParsedValue > &  options 
)
inline

Replace common macroes for file name generation. I.e.: "A/$Filename" etc.

Definition at line 94 of file CommandParseHelpers.h.

References replaceToken().

Referenced by Cogs::Core::ExportCommand::apply().

◆ replaceToken()

bool Cogs::Core::replaceToken ( std::string &  str,
const std::vector< ParsedValue > &  options,
const std::string  token,
const StringView option,
const StringView direct 
)
inline

Check string for the given token. Replace with option string is set else direct value.

Definition at line 59 of file CommandParseHelpers.h.

References getOption().

Referenced by replaceFileMacros().

◆ resourceStoreInspector()

void Cogs::Core::resourceStoreInspector ( class Context context,
bool *  show 
)

Definition at line 13 of file ResourceStoreInspector.cpp.

◆ runBatch()

void Cogs::Core::runBatch ( class Context context,
class Editor editor,
const StringView path 
)

Definition at line 390 of file Batch.cpp.

◆ runCommand()

template<typename T >
void Cogs::Core::runCommand ( Batch ,
BatchCommand command,
Editor editor,
EntityId  id 
)

Definition at line 381 of file Batch.cpp.

◆ runFrames()

void COGSCORE_EDITOR_API Cogs::Core::runFrames ( Context context,
size_t  numFrames,
bool  clear,
bool  wait 
)

Definition at line 342 of file Batch.cpp.

◆ scriptConsole()

void Cogs::Core::scriptConsole ( class Context context,
bool *  show 
)

Definition at line 140 of file ScriptInspector.cpp.

◆ scriptInspector()

void Cogs::Core::scriptInspector ( class Context context,
bool *  show 
)

Definition at line 218 of file ScriptInspector.cpp.

◆ seq_parameter_set_nalu() [1/2]

void Cogs::Core::seq_parameter_set_nalu ( H264ParseData parse,
const uint8_t *  sps,
size_t  sps_size 
)

Definition at line 1414 of file H264Parser.cpp.

◆ seq_parameter_set_nalu() [2/2]

void Cogs::Core::seq_parameter_set_nalu ( H265ParseData parse,
const uint8_t *  sps,
size_t  sps_size 
)

Definition at line 597 of file H265Parser.cpp.

◆ seq_parameter_set_rbsp()

void Cogs::Core::seq_parameter_set_rbsp ( H265ParseData parse,
const uint8_t *  data,
size_t  size 
)

Definition at line 320 of file H265Parser.cpp.

◆ setProcessTaskEffectParameter()

void Cogs::Core::setProcessTaskEffectParameter ( RenderTaskContext renderContext,
std::list< std::unique_ptr< SubContext > > &  subContexts,
ExpressionContext expressionContext,
ProcessTask task,
const ParsedValue parameter 
)

Definition at line 92 of file RenderTaskFactory.cpp.

◆ shadowMapInspector()

void Cogs::Core::shadowMapInspector ( class Context context,
bool *  show 
)

Definition at line 94 of file ShadowMapInspector.cpp.

◆ showArray1D()

template<typename T >
bool Cogs::Core::showArray1D ( const std::string &  header,
std::span< T >  array 
)

Present const array or allow edit non-const array. Returns true if changed.

Definition at line 124 of file InspectorGuiHelper.h.

◆ showArray2D()

template<typename T >
bool Cogs::Core::showArray2D ( const std::string &  header,
std::span< T >  array 
)

Definition at line 193 of file InspectorGuiHelper.h.

◆ showArray3D() [1/2]

bool Cogs::Core::showArray3D ( const std::string &  header,
std::span< glm::vec3 >  array 
)

Definition at line 364 of file InspectorGuiHelper.cpp.

◆ showArray3D() [2/2]

template<typename T >
bool Cogs::Core::showArray3D ( const std::string &  header,
std::span< T >  array 
)

Definition at line 233 of file InspectorGuiHelper.h.

◆ showArray4D()

template<typename T >
bool Cogs::Core::showArray4D ( const std::string &  header,
std::span< T >  array 
)

Definition at line 273 of file InspectorGuiHelper.h.

◆ showCollapsableEntityInspector()

void Cogs::Core::showCollapsableEntityInspector ( class Context context,
const ComponentModel::Entity entity,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern,
bool  showBorder = true 
)

Definition at line 46 of file EntityInspector.cpp.

◆ showComponentInspector()

void Cogs::Core::showComponentInspector ( Context context,
ComponentModel::Component component,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern,
bool  showBorder = true 
)

Definition at line 107 of file EntityInspector.cpp.

◆ showEntities()

void Cogs::Core::showEntities ( Context context,
std::span< const EntityPtr entities,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern 
)

Definition at line 65 of file EntityInspector.cpp.

◆ showEntity()

Entity * Cogs::Core::showEntity ( EditorState editor,
Entity entity 
)

Definition at line 1682 of file Editor.cpp.

◆ showEntityDefinition()

void Cogs::Core::showEntityDefinition ( SceneDefinition scene,
const SceneEntityDefinition definition 
)

Definition at line 57 of file AssetInspector.cpp.

◆ showEntityInspector()

void Cogs::Core::showEntityInspector ( Context context,
const ComponentModel::Entity entity,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern,
bool  showBorder = true 
)

Definition at line 72 of file EntityInspector.cpp.

◆ showEnum()

template<typename T >
bool Cogs::Core::showEnum ( const std::string &  header,
T &  currentItem 
)

Show enumerator with edit option.

Definition at line 98 of file InspectorGuiHelper.h.

◆ showFieldInspector()

void Cogs::Core::showFieldInspector ( Context context,
ComponentModel::Component component,
FieldId  fieldId,
std::string_view  entityNamePattern,
std::string_view  componentNamePattern,
bool  showBorder = true 
)

Definition at line 156 of file EntityInspector.cpp.

◆ showMaterialInstance()

void Cogs::Core::showMaterialInstance ( const Context context,
struct MaterialInstance material,
const std::string &  header 
)

Definition at line 948 of file InspectorGuiHelper.cpp.

◆ showMaterialOptions()

void Cogs::Core::showMaterialOptions ( const Context context,
MaterialOptions options,
const std::string &  header 
)

Definition at line 766 of file InspectorGuiHelper.cpp.

◆ showMaterialProperties()

void Cogs::Core::showMaterialProperties ( MaterialInstance material)

Definition at line 842 of file InspectorGuiHelper.cpp.

◆ showMaterialVariants()

void Cogs::Core::showMaterialVariants ( MaterialInstance material)

Definition at line 793 of file InspectorGuiHelper.cpp.

◆ showMatrix()

bool Cogs::Core::showMatrix ( const std::string &  header,
glm::mat4 &  m 
)

Definition at line 339 of file InspectorGuiHelper.cpp.

◆ showMesh()

void Cogs::Core::showMesh ( const Context context,
Mesh mesh,
const std::string &  header 
)

Definition at line 388 of file InspectorGuiHelper.cpp.

◆ showModel()

void Cogs::Core::showModel ( const Context context,
Model model,
const std::string &  header 
)

Definition at line 1032 of file InspectorGuiHelper.cpp.

◆ showTexture()

void Cogs::Core::showTexture ( const Context context,
class Renderer renderer,
Texture texture,
bool  showTitle = false 
)

Definition at line 184 of file InspectorGuiHelper.cpp.

◆ simplexMaximize()

Cogs::Core::SimplexResult Cogs::Core::simplexMaximize ( Context context,
uintptr_t  scratch,
double *  solutions,
const int  variableCount,
const double *  objectives,
const int  objectiveCount,
const double *  restrictions,
const int  restrictionCount,
const int  maxIterationCount,
const bool  printSteps = false 
)

Find the maximum of a linear programming problem using the simplex method.

Due to the simplex method, the code searches for a solution where the decision variables are non-negative, and thus, there are decisionVariables implicit restrictions.

Parameters
solutionPointer to an array of size variableCount times objectiveCount, where the optimal solution for each objective will be stored.
variableCountNumber of decision variables.
objectivePointer to an array of size variableCount times , containing coefficients of objective function.
objectiveCountNumber of objective functions to process, one solution per objective function.
restrictionsPointer to an array of size decisionVariables +1 times restrictionCount, with coefficients of restrictions. The restrictions are on the form c0*x + c1*y + c2*z <= c3, where c0..c3 are a row in the restricition array.
restrictionCountThe number of restrictions specified, in addition to the implicit non-negativity restrictions.
maxIterationCountThe maximum number of iterations to carry out before giving up.
Returns
If all goes well, either OptimalSolutionFound or NoFeasibleSolutions.

Definition at line 452 of file Simplex.cpp.

◆ simplexScratchSize()

size_t Cogs::Core::simplexScratchSize ( const size_t  variableCount,
const size_t  objectiveCount,
const size_t  restrictionCount 
)

Number of bytes of scratch array required by simplexMaximize.


Definition at line 440 of file Simplex.cpp.

◆ spawnAsset()

bool Cogs::Core::spawnAsset ( Context context,
AssetLodReference lodReference,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance 
)

Definition at line 1367 of file AssetSystem.cpp.

◆ spawnEntity()

bool Cogs::Core::spawnEntity ( Context context,
AssetLodReference lodReference,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance,
EntityParentMode  parentMode 
)

Definition at line 1527 of file AssetSystem.cpp.

◆ spawnLodGroup()

bool Cogs::Core::spawnLodGroup ( Context context,
AssetLodReference lodReference,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance,
EntityParentMode   
)

Definition at line 1293 of file AssetSystem.cpp.

◆ spawnModel()

bool Cogs::Core::spawnModel ( Context context,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance,
EntityParentMode  parentMode 
)

Definition at line 1387 of file AssetSystem.cpp.

◆ sphereSectorGeometricAreaPredicate()

float Cogs::Core::sphereSectorGeometricAreaPredicate ( const glm::vec2  screenSpaceRadii,
const glm::vec2  viewportSize,
const float  areaPixelTolerance,
const float  minSectors,
const float  maxSectors 
)

Definition at line 113 of file TessellationPredicates.cpp.

◆ sphereSectorGeometricDistancePredicate()

float Cogs::Core::sphereSectorGeometricDistancePredicate ( const glm::vec2  screenSpaceRadii,
const glm::vec2  viewportSize,
const float  distancePixelTolerance,
const float  minSectors,
const float  maxSectors 
)

Definition at line 62 of file TessellationPredicates.cpp.

◆ split() [1/3]

Cogs::Core::TokenStream Cogs::Core::split ( const StringView str,
const StringView splits 
)

Definition at line 321 of file Parsing.cpp.

◆ split() [2/3]

void Cogs::Core::split ( const StringView str,
const StringView splits,
const int  grouper,
TokenStream &  tokens 
)

Definition at line 289 of file Parsing.cpp.

◆ split() [3/3]

void Cogs::Core::split ( const StringView str,
const StringView splits,
TokenStream &  tokens 
)

Definition at line 265 of file Parsing.cpp.

◆ taskManagerInspector()

void Cogs::Core::taskManagerInspector ( Context context,
bool *  show 
)

Definition at line 16 of file TaskManagerInspector.cpp.

◆ tesselate()

void Cogs::Core::tesselate ( const glm::vec3 *  contours,
const size_t  count,
const size_t  stride,
std::vector< uint32_t > &  triangleIndexes,
uint32_t  base = 0 
)

Definition at line 24 of file IndexConversion.cpp.

◆ tesselatePolygons()

std::vector< int32_t > Cogs::Core::tesselatePolygons ( std::vector< int32_t > &  inputIndexes,
Mesh mesh 
)

Definition at line 66 of file IndexConversion.cpp.

◆ textureInspector()

void Cogs::Core::textureInspector ( class Context context,
bool *  show 
)

Definition at line 101 of file TextureInspector.cpp.

◆ toBullet() [1/2]

btQuaternion Cogs::Core::toBullet ( const glm::quat &  v)
inline

Definition at line 66 of file PhysicsManager.h.

◆ toBullet() [2/2]

btVector3 Cogs::Core::toBullet ( const glm::vec3 &  v)
inline

Definition at line 61 of file PhysicsManager.h.

◆ toImVec2()

ImVec2 Cogs::Core::toImVec2 ( int  x,
int  y 
)

Definition at line 82 of file GuiContainer.cpp.

◆ toImVec4()

ImVec4 Cogs::Core::toImVec4 ( const litehtml::web_color color)

Definition at line 77 of file GuiContainer.cpp.

◆ tokenize() [1/2]

Cogs::Core::TokenStream Cogs::Core::tokenize ( const StringView valueStr)

Definition at line 328 of file Parsing.cpp.

◆ tokenize() [2/2]

void Cogs::Core::tokenize ( const StringView valueStr,
TokenStream &  tokens 
)

Definition at line 337 of file Parsing.cpp.

◆ toKey()

Cogs::StringView Cogs::Core::toKey ( const Value &  v)
inline

Definition at line 33 of file JsonParser.h.

◆ toString()

std::string Cogs::Core::toString ( const Value &  v)
inline

Definition at line 44 of file JsonParser.h.

◆ toView()

Cogs::StringView Cogs::Core::toView ( const Value &  v)
inline

Definition at line 38 of file JsonParser.h.

◆ transformVertex3ToVertex4()

void Cogs::Core::transformVertex3ToVertex4 ( Context context,
uint8_t *  dst,
const size_t  dst_stride,
const size_t  dst_bytes,
const glm::mat4 &  matrix,
const uint8_t *  src,
const size_t  src_stride,
const size_t  src_bytes,
const size_t  src_count 
)

Definition at line 54 of file TransformVertices_ref.cpp.

◆ transformVertex3ToVertex4AVX()

void Cogs::Core::transformVertex3ToVertex4AVX ( uint8_t *  dst,
const size_t  dst_stride,
const  size_t,
const glm::mat4 &  matrix,
const uint8_t *  src,
const size_t  src_stride,
const  size_t,
const size_t  src_count 
)

Definition at line 14 of file TransformVertices_avx.cpp.

◆ transformVertex3ToVertex4FastPathAVX()

void Cogs::Core::transformVertex3ToVertex4FastPathAVX ( uint8_t *  dst,
const size_t  dst_stride,
const  size_t,
const glm::mat4 &  matrix,
const uint8_t *  src,
const size_t  src_stride,
const  size_t,
const size_t  src_count 
)

Definition at line 103 of file TransformVertices_avx.cpp.

◆ transformVertex3ToVertex4FastPathSSE1()

void Cogs::Core::transformVertex3ToVertex4FastPathSSE1 ( uint8_t *  dst,
const size_t  dst_stride,
const size_t  dst_bytes,
const glm::mat4 &  matrix,
const uint8_t *  src,
const size_t  src_stride,
const size_t  src_bytes,
const size_t  src_count 
)

Definition at line 69 of file TransformVertices_sse.cpp.

◆ transformVertex3ToVertex4SSE1()

void Cogs::Core::transformVertex3ToVertex4SSE1 ( uint8_t *  dst,
const size_t  dst_stride,
const size_t  dst_bytes,
const glm::mat4 &  matrix,
const uint8_t *  src,
const size_t  src_stride,
const size_t  src_bytes,
const size_t  src_count 
)

Definition at line 8 of file TransformVertices_sse.cpp.

◆ transformVertices() [1/2]

void Cogs::Core::transformVertices ( Context context,
std::vector< glm::vec4 > &  dst,
const glm::mat4 &  matrix,
const std::vector< glm::vec3 > &  src 
)
inline

Definition at line 24 of file TransformVertices.h.

◆ transformVertices() [2/2]

void Cogs::Core::transformVertices ( Context context,
std::vector< glm::vec4 > &  dst,
const glm::mat4 &  matrix,
const std::vector< glm::vec3 > &  src,
size_t  offset,
size_t  count 
)
inline

Definition at line 40 of file TransformVertices.h.

◆ traverse()

void Cogs::Core::traverse ( Context context,
Entity entity,
const std::regex &  matchRegex 
)

Definition at line 91 of file MergeCommand.cpp.

◆ traverseMerge()

void Cogs::Core::traverseMerge ( Context context,
Entity entity,
MergeMeshState state 
)

Definition at line 257 of file MergeCommand.cpp.

◆ traverseScale()

void Cogs::Core::traverseScale ( Context context,
Entity entity,
MergeMeshState state 
)

Definition at line 289 of file MergeCommand.cpp.

◆ unpackMeshItems()

void Cogs::Core::unpackMeshItems ( Context context,
std::vector< MeshHandle > &  originalMeshes,
MeshReps &  meshes,
MeshItems items,
UnpackOptions  options = UnpackOptions() 
)

Definition at line 447 of file CommandHelpers.cpp.

◆ updateAssetDesiredLevels()

void Cogs::Core::updateAssetDesiredLevels ( Context context,
AssetInstanceData assetInstance,
uint32_t  lodDepth,
uint32_t  maxIterations 
)

Definition at line 1013 of file AssetSystem.cpp.

◆ updateAssetInstanceRenderProperties()

void Cogs::Core::updateAssetInstanceRenderProperties ( Context context,
AssetInstanceData assetInstance 
)

Definition at line 1862 of file AssetSystem.cpp.

◆ updateData()

void Cogs::Core::updateData ( ZipData data,
const ZipComponent component 
)

Definition at line 41 of file ZipSystem.cpp.

◆ updateEngineBuffers()

void Cogs::Core::updateEngineBuffers ( RenderTaskContext context,
const RenderTarget renderTarget,
const CameraData viewportData,
const std::array< glm::vec4, 6 > *  clipEquations 
)

Definition at line 350 of file EngineBuffers.cpp.

◆ updateEntity()

void Cogs::Core::updateEntity ( Context context,
AssetLodReference lodReference,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance,
EntityInstanceData parentInstance 
)

Definition at line 1582 of file AssetSystem.cpp.

◆ updateEntityDesiredLevels()

void Cogs::Core::updateEntityDesiredLevels ( Context context,
AssetInstanceData instance,
AssetLodReference lodReference,
EntityInstanceData entityInstance,
uint32_t  lodDepth,
const float  tolerance 
)

Definition at line 939 of file AssetSystem.cpp.

◆ updateEntityInstanceRenderProperties()

void Cogs::Core::updateEntityInstanceRenderProperties ( Context context,
AssetInstanceData assetInstance,
EntityInstanceData entityInstance 
)

Definition at line 1818 of file AssetSystem.cpp.

◆ updateEnvironmentBindings()

void Cogs::Core::updateEnvironmentBindings ( const DrawContext drawContext,
const EffectBinding bindings 
)

Definition at line 77 of file RenderStateUpdater.cpp.

◆ updateIndexes()

void Cogs::Core::updateIndexes ( const ZipData data,
const ZipComponent component,
Mesh mesh 
)

Definition at line 186 of file ZipSystem.cpp.

◆ updateInstancedModelChildEntityRenderProperties()

void Cogs::Core::updateInstancedModelChildEntityRenderProperties ( Context context,
AssetInstanceData assetInstance,
Entity entity 
)

Definition at line 1799 of file AssetSystem.cpp.

◆ updateLodGroupDesiredLevel()

void Cogs::Core::updateLodGroupDesiredLevel ( AssetInstanceData instance,
AssetLodReference lodReference,
EntityInstanceData lodInstance,
uint32_t  lodDepth,
const float  tolerance 
)

Definition at line 736 of file AssetSystem.cpp.

◆ updateMassProperties()

void Cogs::Core::updateMassProperties ( RigidBodyData data,
float  mass,
const glm::vec3 &  scale 
)

Definition at line 33 of file RigidBodySystem.cpp.

◆ updateMasterMaterial()

void Cogs::Core::updateMasterMaterial ( Context ,
ModelData modelData,
MaterialInstanceHandle  masterMaterial 
)

Definition at line 59 of file ModelSystem.cpp.

◆ updateMaterialBindings()

void Cogs::Core::updateMaterialBindings ( const DrawContext drawContext,
const RenderMaterialInstance renderMaterialInstance,
const EffectBinding bindings,
bool  perInstance 
)

Definition at line 301 of file RenderStateUpdater.cpp.

◆ updateMaterialInstance()

void Cogs::Core::updateMaterialInstance ( Context context,
MaterialInstance materialInstance,
const MaterialInstanceDefinition materialInstanceValue 
)

◆ updatePositions()

void Cogs::Core::updatePositions ( const ZipData data,
const ZipComponent component,
Mesh mesh,
bool  useGpu 
)

Definition at line 93 of file ZipSystem.cpp.

◆ updateRenderPropertiesRecurse()

void Cogs::Core::updateRenderPropertiesRecurse ( const AssetInstanceData instanceData,
Entity entity 
)

Definition at line 1782 of file AssetSystem.cpp.

◆ updateSceneBindings() [1/2]

void Cogs::Core::updateSceneBindings ( const DrawContext drawContext,
const CameraData cameraData,
const EffectBinding bindings 
)

Definition at line 37 of file RenderStateUpdater.cpp.

◆ updateSceneBindings() [2/2]

void Cogs::Core::updateSceneBindings ( const RenderTaskContext taskContext,
const EffectBinding bindings 
)

Definition at line 44 of file RenderStateUpdater.cpp.

◆ updateSkeletonPose()

void Cogs::Core::updateSkeletonPose ( Skeleton skeleton)

Definition at line 33 of file AnimationSystem.cpp.

◆ updateTerrainContext()

void Cogs::Core::updateTerrainContext ( TerrainData terrainData,
const RenderTaskContext renderingContext,
const RenderTarget renderTarget,
const CameraData cameraData 
)

Definition at line 62 of file TerrainRenderer.cpp.

◆ updateTexCoords()

void Cogs::Core::updateTexCoords ( const ZipData data,
const ZipComponent ,
Mesh mesh 
)

Definition at line 234 of file ZipSystem.cpp.

◆ updateViewportBuffer()

void Cogs::Core::updateViewportBuffer ( RenderTaskContext context,
BufferHandle sceneBufferHandle,
BufferHandle viewBufferHandle,
const RenderTarget renderTarget,
const CameraData viewportData,
const std::array< glm::vec4, 6 > *  clipEquations 
)

Definition at line 71 of file EngineBuffers.cpp.

◆ variableInspector()

void Cogs::Core::variableInspector ( class Context context,
bool *  show 
)

Definition at line 34 of file VariableInspector.cpp.

◆ video_parameter_set_nalu()

void Cogs::Core::video_parameter_set_nalu ( H265ParseData parse,
const uint8_t *  vps,
size_t  vps_size 
)

Definition at line 551 of file H265Parser.cpp.

◆ video_parameter_set_rbsp()

void Cogs::Core::video_parameter_set_rbsp ( H265ParseData parse,
const uint8_t *  data,
size_t  size 
)

Definition at line 246 of file H265Parser.cpp.

◆ write_b()

void Cogs::Core::write_b ( uint32_t  val,
uint8_t *  data,
size_t &  bit 
)

Definition at line 64 of file MPEG_TS_encode.cpp.

◆ write_u()

void Cogs::Core::write_u ( uint32_t  val,
uint8_t *  data,
size_t &  bit,
size_t  n 
)

Definition at line 73 of file MPEG_TS_encode.cpp.

◆ writeAsset() [1/2]

bool Cogs::Core::writeAsset ( class Context context,
const char *  path,
AssetHandle  asset,
AssetWriteFlags  writeFlags 
)

Definition at line 849 of file AssetWriter.cpp.

◆ writeAsset() [2/2]

bool Cogs::Core::writeAsset ( class Context context,
StringView  fileName,
AssetWriteFlags  flags = AssetWriteFlags::None,
ComponentModel::Entity root = nullptr 
)

Definition at line 578 of file AssetWriter.cpp.

◆ writeBool()

template<typename AllocatorType >
void Cogs::Core::writeBool ( Value &  object,
const StringView key,
bool  value,
bool  defaultValue,
AllocatorType &  a 
)

Definition at line 144 of file EntityWriter.cpp.

◆ writeCogsBin3Models()

bool Cogs::Core::writeCogsBin3Models ( Context context,
uint32_t &  numVertes,
uint32_t &  numIndexes,
const StringView fileName,
ComponentModel::Entity **  entity,
size_t  N,
WriteModelFlags  flags = WriteModelFlags::COMPRESS_ZSTD | WriteModelFlags::COMPRESS_MAX 
)

Definition at line 1338 of file CogsBin3Writer.cpp.

◆ writeDouble()

template<typename AllocatorType >
void Cogs::Core::writeDouble ( Value &  object,
const StringView key,
const double  value,
const double  defaultValue,
AllocatorType &  a 
)

Definition at line 117 of file EntityWriter.cpp.

◆ writeEntity() [1/2]

rapidjson::Document Cogs::Core::writeEntity ( Context context,
ComponentModel::Entity entity,
const AssetWriteFlags  flags = AssetWriteFlags::None 
)

Serialize entity to new JSON document.

Definition at line 525 of file EntityWriter.cpp.

References writeEntity().

◆ writeEntity() [2/2]

void Cogs::Core::writeEntity ( Context context,
ComponentModel::Entity entity,
rapidjson::Value &  object,
rapidjson::Document &  d,
SerializationContext sc = nullptr,
const AssetWriteFlags  flags = AssetWriteFlags::None 
)

◆ writeInteger()

template<typename T , typename AllocatorType >
void Cogs::Core::writeInteger ( Value &  object,
const StringView key,
value,
defaultValue,
AllocatorType &  a 
)

Definition at line 135 of file EntityWriter.cpp.

◆ writeMat()

template<typename AllocatorType >
void Cogs::Core::writeMat ( Value &  object,
const StringView key,
const glm::mat4 &  value,
const glm::mat4 &  defaultValue,
AllocatorType &  a 
)

Definition at line 102 of file EntityWriter.cpp.

◆ writeMeshStats()

void Cogs::Core::writeMeshStats ( ModelStats stats,
Mesh mesh 
)

Definition at line 48 of file DumpStatsCommand.cpp.

◆ writeModel() [1/2]

bool Cogs::Core::writeModel ( Context context,
const StringView fileName,
ComponentModel::Entity entity,
WriteModelFlags  flags = WriteModelFlags::COMPRESS_ZSTD | WriteModelFlags::COMPRESS_MAX 
)

Definition at line 1750 of file ModelWriter.cpp.

◆ writeModel() [2/2]

bool Cogs::Core::writeModel ( Context context,
uint32_t &  numVertes,
uint32_t &  numIndexes,
const StringView fileName,
ComponentModel::Entity entity,
WriteModelFlags  flags = WriteModelFlags::COMPRESS_ZSTD | WriteModelFlags::COMPRESS_MAX 
)

Definition at line 1757 of file ModelWriter.cpp.

◆ writeModels()

bool Cogs::Core::writeModels ( Context context,
uint32_t &  numVertes,
uint32_t &  numIndexes,
const StringView fileName,
ComponentModel::Entity **  entity,
size_t  N,
WriteModelFlags  flags = WriteModelFlags::COMPRESS_ZSTD | WriteModelFlags::COMPRESS_MAX 
)

Definition at line 1708 of file ModelWriter.cpp.

◆ writeStats()

void Cogs::Core::writeStats ( Context context,
ModelStats model,
uint32_t  ,
ComponentModel::Entity entity 
)

Definition at line 83 of file DumpStatsCommand.cpp.

◆ writeStream()

void Cogs::Core::writeStream ( ModelStats stats,
const DataStream stream 
)

Definition at line 37 of file DumpStatsCommand.cpp.

◆ writeString()

template<typename AllocatorType >
void Cogs::Core::writeString ( Value &  object,
const StringView key,
StringView  value,
StringView  defaultValue,
AllocatorType &  a 
)

Definition at line 156 of file EntityWriter.cpp.

◆ writeVec()

template<typename T , typename AllocatorType >
void Cogs::Core::writeVec ( Value &  object,
const StringView key,
value,
defaultValue,
AllocatorType &  a 
)

Definition at line 87 of file EntityWriter.cpp.

◆ writeVectorDouble()

template<typename T , typename AllocatorType >
void Cogs::Core::writeVectorDouble ( Value &  object,
const StringView key,
const std::vector< T > &  values,
const std::vector< T >  defaultValue,
AllocatorType &  a 
)

Definition at line 71 of file EntityWriter.cpp.

◆ writeVectorInt()

template<typename T , typename AllocatorType >
void Cogs::Core::writeVectorInt ( Value &  object,
const StringView key,
const std::vector< T > &  values,
const std::vector< T >  defaultValue,
AllocatorType &  a 
)

Definition at line 55 of file EntityWriter.cpp.

◆ writeVectorVec()

template<typename T , typename AllocatorType >
void Cogs::Core::writeVectorVec ( Value &  object,
const StringView key,
const std::vector< T > &  values,
const std::vector< T >  defaultValue,
AllocatorType &  a 
)

Definition at line 37 of file EntityWriter.cpp.

Variable Documentation

◆ creators

std::unordered_map<std::string, TaskCreator> Cogs::Core::creators

Definition at line 44 of file RenderTaskFactory.cpp.

◆ DefaultSpriteMaterial

const SpriteMaterialKey Cogs::Core::DefaultSpriteMaterial = 0

Definition at line 52 of file SpriteRenderSystem.h.

◆ destroyers

std::unordered_map<std::string, TaskDestroyer> Cogs::Core::destroyers

Definition at line 45 of file RenderTaskFactory.cpp.

◆ guiIdsStack

std::vector< size_t > Cogs::Core::guiIdsStack
extern

Definition at line 40 of file InspectorGuiHelper.cpp.

◆ guiWindowTitle

std::string Cogs::Core::guiWindowTitle
extern

Definition at line 39 of file InspectorGuiHelper.cpp.

◆ icons

const IconInfo Cogs::Core::icons[]

Definition at line 554 of file Editor.cpp.

◆ kDefaultDeadZone

constexpr float Cogs::Core::kDefaultDeadZone = 0.1f
constexpr

Definition at line 17 of file InputDeviceState.h.

◆ kDefaultSensitivity

constexpr float Cogs::Core::kDefaultSensitivity = 1.0f
constexpr

Definition at line 19 of file InputDeviceState.h.

◆ kMaxActions

constexpr size_t Cogs::Core::kMaxActions = 128
constexpr

Definition at line 15 of file InputDeviceState.h.

◆ kMaxAxes

constexpr size_t Cogs::Core::kMaxAxes = 128
constexpr

Definition at line 14 of file InputDeviceState.h.

◆ kMaxBones

const size_t Cogs::Core::kMaxBones = 256

Definition at line 75 of file Animation.h.

◆ kMaxCascades

constexpr size_t Cogs::Core::kMaxCascades = 6
constexpr

Definition at line 5 of file Constants.h.

◆ kMaxDynamicMethods

constexpr size_t Cogs::Core::kMaxDynamicMethods = 64
constexpr

Definition at line 23 of file DynamicComponentSystem.h.

◆ kMaxDynamicTypes

constexpr size_t Cogs::Core::kMaxDynamicTypes = 1024
constexpr

Definition at line 22 of file DynamicComponentSystem.h.

◆ kMaxLights

constexpr int Cogs::Core::kMaxLights = 8
constexpr

Definition at line 6 of file Constants.h.

◆ kMinBatchSize

const size_t Cogs::Core::kMinBatchSize = 256 / sizeof(SpriteVertex)

Definition at line 87 of file SpriteRenderSystem.h.

◆ kNoDeadZoneLink

constexpr size_t Cogs::Core::kNoDeadZoneLink = static_cast<size_t>(-1)
constexpr

Definition at line 18 of file InputDeviceState.h.

◆ ModelPartIdentity

const glm::mat4 Cogs::Core::ModelPartIdentity = glm::mat4(1.0f)

Definition at line 18 of file Model.h.

◆ NoBatchIndex

const SpriteBatchIndex Cogs::Core::NoBatchIndex = static_cast<SpriteBatchIndex>(-1)

Definition at line 22 of file SpriteRenderSystem.h.

◆ NoCullingIndex

constexpr uint32_t Cogs::Core::NoCullingIndex = static_cast<uint32_t>(-1)
constexpr

Definition at line 27 of file RenderSystem.h.

◆ NoIndex

const uint32_t Cogs::Core::NoIndex = uint32_t(-1)

Definition at line 16 of file Model.h.

◆ NoMessage

constexpr MessageId Cogs::Core::NoMessage = static_cast<MessageId>(-1)
constexpr

Definition at line 20 of file DynamicComponentSystem.h.

◆ NoObjectId

constexpr uint32_t Cogs::Core::NoObjectId = 0
constexpr

Definition at line 11 of file RenderComponent.h.

◆ NoParent

const int Cogs::Core::NoParent = -1

Definition at line 32 of file AdaptivePlanarGridSystem.h.

◆ NoParentEntity

constexpr uint32_t Cogs::Core::NoParentEntity = static_cast<uint32_t>(-1)
constexpr

Definition at line 153 of file AssetDefinition.h.

◆ NoParentPart

const size_t Cogs::Core::NoParentPart = uint32_t(-1)

Definition at line 15 of file Model.h.

◆ NoSpriteIndex

const SpriteIndex Cogs::Core::NoSpriteIndex = static_cast<SpriteIndex>(-1)

Definition at line 25 of file SpriteRenderSystem.h.

◆ NoSpriteMaterial

const SpriteMaterialKey Cogs::Core::NoSpriteMaterial = static_cast<SpriteMaterialKey>(-1)

Definition at line 51 of file SpriteRenderSystem.h.

◆ NoString

const StringRef Cogs::Core::NoString = StringRef{ 0 }

Definition at line 16 of file Strings.h.

◆ ParsedDataTypeNames

const char * Cogs::Core::ParsedDataTypeNames
extern
Initial value:
= {
"Unknown",
"Object",
"string",
"float",
"float2",
"float3",
"float4",
"float4x4",
"int",
"int2",
"int3",
"int4",
"uint",
"uint2",
"uint3",
"uint4",
"double",
"bool",
"Texture2D",
"ConstantBuffer",
"Buffer",
}

Definition at line 61 of file Parsing.cpp.

◆ ParsedDataTypeSizes

const size_t Cogs::Core::ParsedDataTypeSizes
extern
Initial value:
= {
0,
0,
0,
4,
8,
12,
16,
64,
4,
8,
12,
16,
4,
8,
12,
16,
8,
1,
0,
0,
0,
}

Definition at line 36 of file Parsing.cpp.

◆ pointSizeGlobalMaxScaleName

const Cogs::StringView Cogs::Core::pointSizeGlobalMaxScaleName = "potree.pointSize.globalMaxScale"

Definition at line 26 of file PotreeSystem.cpp.

◆ pointSizeGlobalMinScaleName

const Cogs::StringView Cogs::Core::pointSizeGlobalMinScaleName = "potree.pointSize.globalMinScale"

Definition at line 25 of file PotreeSystem.cpp.

◆ pointSizeGlobalScaleName

const Cogs::StringView Cogs::Core::pointSizeGlobalScaleName = "potree.pointSize.globalScale"

Definition at line 27 of file PotreeSystem.cpp.

◆ setGuiMode

ImDrawCallback Cogs::Core::setGuiMode = dummyRenderCallback
extern

Callback for Render updates - not really called.

Definition at line 136 of file ImguiRenderer.cpp.

◆ spacingGlobalScaleName

const Cogs::StringView Cogs::Core::spacingGlobalScaleName = "potree.spacing.globalScale"

Definition at line 24 of file PotreeSystem.cpp.