Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

NameDescription
Geo::AbstractRayChunk

Buffer that holds a chunk of rays and results.

Geo::AnsiAllocator

Simple implementation of the MemoryAllocator class that forwards all requests to the malloc/free ANSI functions.

Geo::ArrayRange

A range within an array [first, last).

Geo::BasicAllocator

A basic memory allocator.

Geo::BboxEdge

A single edge of a bounding box.

Geo::BboxFace

A single face of a bounding box.

Geo::ClippedRay

A finite ray with near and far clipping planes.

Geo::ConvexHull

A convex hull of a set of points.

Geo::ConvexHullBuilder

Builds ConvexHull objects.

Geo::CovarianceMatrix

A covariance matrix.

Geo::CovarianceMatrixBuilder

Used for building CovarianceMatrix.

Geo::DebugLine

A line between two points.

Geo::EmbreeRtMeshVisitor
Geo::eWindingOrder

Winding order (clockwise/counterclockwise).

Geo::FixedSizeArray

A fixed size array.

Geo::Float8

8-bit floating point.

Geo::Geo2DTransform

A class representing a 2d linear transform between UVs.

Geo::GeoAlignedFreeDestructor

A type for freeing objects using GEO_ALIGNED_FREE. This is for use in GeoAutoPtr.

Geo::GeoAllocationPage

A storage unit for a page based allocation system.

Geo::GeoAllocator

A type of std::allocator, that passes memory requests through to the Geo heap functions This is used as the default allocator argument for the STL-like GeoMap/GeoList containers.

Geo::GeoAllocatorUnchecked

A custom std::allocator, that uses simple malloc/free.

Geo::GeoArray

Basic templated dynamic array class.

Geo::GeoArray_Stl

STL adaptor to make the GeoArray look like a proper STL container.

Geo::GeoAtomic
Geo::GeoAutoArrayPtr

Given the lack of a template typedef, and how common it is to want a GeoAutoPtr with Array dtor, adding a new class to provide this destruction policy by default.

Geo::GeoAutoDeleteArray

Adaptor to allow storing of pointers in a container (calls GEO_DELETE on each pointer upon array destruction)

Geo::GeoAutoDeleteList

Adaptor to allow container to own the pointed-to value data (calls GEO_DELETE() on each pointer upon container destruction)

Geo::GeoAutoDeleteMap

Adaptor to allow container to own the pointed-to value data (calls GEO_DELETE() on each pointer upon container destruction)

Geo::GeoAutoPtr

A value type to take ownership of a raw object allocated on the heap and bind its life-time to the scope of this class.

Geo::GeoAutoReleaseArray

Adaptor to allow storing of IGeoReleasable pointers in a container (calls Release() on each pointer upon array destruction)

Geo::GeoAutoReleaseMap

Adaptor to allow container to own the pointed-to value data (calls Release() on each pointer upon container destruction)

Geo::GeoAutoReleasePtr

Given the lack of a template typedef, and how common it is to want a GeoAutoPtr with Release dtor, adding a new class to provide this destruction policy by default.

Geo::GeoBitArray

A simple bit array wrapper, stored in an array of u32s.

Geo::GeoBitStore

Container for a set of bits.

Geo::GeoBlueNoise

class GeoBlueNoise Adapted from: Bridson, Robert, "Fast Poisson Sampling in Arbitrary Dimensions", ACM SIGGRAPH 2007 sketches

Geo::GeoBlueNoiseDiskPalette

Builds a pallet of blue noise samples, each in a disk of radius 1.

Geo::GeoBlueNoiseRayPalette

class GeoBlueNoiseRayPalette

Geo::GeoBoundingBox

This class represents an axis aligned bounding box.

Geo::GeoBoundingSphere

This class represents a bounding sphere.

Geo::GeoBufferedFileStream

Simple IGeoStream implementation that saves/loads data into/from memory and performs all read/write operations on this copy.

Geo::GeoBufferedInputStream

An implementation of IGeoInputStream that uses another stream to fill an internal buffer.

Geo::GeoCriticalSection

Basic wrapper around a critical section object.

Geo::GeoDebugAllocator

MemoryAllocator implementation which fills allocated memory with a given value.

Geo::GeoDelegateDestructor

A type for deleting objects of type T using specific delete function. This is for use in GeoAutoPtr.

Geo::GeoDeleteArrayDestructor

A type for deleting objects of type T using DeleteArray().

Geo::GeoDeleteDestructor

A type for deleting objects of type T using GEO_DELETE.

Geo::GeoDepthCubeMap

A simple storage class for a floating point cube map.

Geo::GeoEmbreeContext

An IGeoRayTracingContext that implements the Intel Embree raytracer.

Geo::GeoEqualCString

A hash functor for a null-terminated string.

Geo::GeoError

Description of a single error reported via an IGeoProgressProxy.

Geo::GeoEvent

Event that can be manually triggered.

Geo::GeoFileManager

The file manager deals with locating resources given a path and a filename.

Geo::GeoFileStream

Simple IGeoStream implementation that saves/loads data from a file.

Geo::GeoFixedPoolAllocator

A std::allocator that passes memory requests through to a single underlying GeoAllocationPage.

Geo::GeoFixedPoolList

To make usage of this pool class a bit less painful, create template holding classes for typedefs; since template typedefs do not exist, this is the closest you can get.

Geo::GeoFixedPoolMap

To make usage of this pool class a bit less painful, create template holding classes for typedefs; since template typedefs do not exist, this is the closest you can get.

Geo::GeoFixedString

This is a simple string class template that always uses a fixed amount of memory for a single string.

Geo::GeoFloat3SE
Geo::GeoFloatAsBits

Allow safe conversion between a float and its representative bit pattern.

Geo::GeoFp16Texture

A (16 bit) floating point texture for input and output.

Geo::GeoFpControl

Sets the state of the floating point control word, and restores the original value when the object is destroyed.

Geo::GeoFrameTime

This class measures frame rate and also computes a running average of the last n frames.

Geo::GeoFreeDestructor

A type for freeing objects using GEO_FREE. This is for use in GeoAutoPtr.

Geo::GeoGenericTexture

A really simple texture where all elements are T.

Geo::GeoGuid

A 128 bit identifier used to uniquely identify objects in the precompute.

Geo::GeoHalf

Convenience value type for a half float.

Geo::GeoHashConstHandle

A const handle into the hash table.

Geo::GeoHashCString

A hash functor for a null-terminated string.

Geo::GeoHashDefault

A generic hashing functor.

Geo::GeoHashHandle

A non-const handle into the hash table.

Geo::GeoHashMap

The hash table.

Geo::GeoHashString

A functor which hashes a char string.

Geo::GeoImmutableArray

Basic templated dynamic immutable array class.

Geo::GeoInstanceCount
Geo::GeoIntRange

Represents a range of integers, e.g. between 10 and 20.

Geo::GeoIntrusivePtr

A value type to take ownership of a raw object allocated on the heap and handle calling AddRef() and Release().

Geo::GeoKeyValueArray

A fast implementation of a set associative container, this one using a sorted array of key values to lookup a similar array of value pointers.

Geo::GeoLineSegment

Debugging output representation of a line segment.

Geo::GeoList

Our implementation of an STL list, with some modifications.

Geo::GeoMap

Our implementation of an STL map, with some modifications.

Geo::GeoMemoryDefault

Fully featured MemoryAllocator implementation that handles memory tracking, leak detection, stack traces, reporting and more.

Geo::GeoMemoryPool

A memory pool.

Geo::GeoMemoryStream

Simple IGeoStream implementation that saves/loads data to a block of memory.

Geo::GeoNonAABoundingBox

Non axis aligned bounding box. Note the "m_Pos" of this class is the CORNER (origin), not the centre.

Geo::GeoNoopDestructor

A type for not destroying anything.

Geo::GeoPair

A generic pair class. Inherits things like CopyConstructible or Assignable from its argument types.

Geo::GeoParametrisedPlane3

A plane with an origin and two basis vectors in the plane.

Geo::GeoPoint2

Single precision 2 dimensional point class.

Geo::GeoPoint2D

Integer 2 dimensional point class.

Geo::GeoPoint3

Single precision 3 dimensional point class.

Geo::GeoPoint3D

Integer 3 dimensional point class.

Geo::GeoPriorityQueue

GeoPriorityQueue.

Geo::GeoProgress

Helper class to manage an IGeoProgressProxy.

Geo::GeoQueue

Simple FIFO queue.

Geo::GeoQueueEnumInterface

Any class which wishes to use the queue Walk function must inherit from this class to define its callback interface.

Geo::GeoRefArrayPtr

Given the lack of a template typedef, and how common it is to want a GeoRefPtr with Array dtor, adding a new class to provide this destruction policy by default.

Geo::GeoRefCount

Base class for reference counted resources.

Geo::GeoRefPtr

A value type to take ownership of a raw object allocated on the heap and track a reference count between multiple instances of this class.

Geo::GeoRefReleasePtr

Given the lack of a template typedef, and how common it is to want a GeoRefPtr with Release dtor, adding a new class to provide this destruction policy by default.

Geo::GeoReleaseDestructor

A type for deleting objects of type T using Release(). This is for use in GeoAutoPtr.

Geo::GeoRGBXTexture

A simple CPU 8 bit per channel texture.

Geo::GeoRGBXTextureElement

A simple CPU 8 bit per channel texture element.

Geo::GeoScopedCSection

A simple utility for aquiring a lock for the duration of a function.

Geo::GeoSingleton

Inherit from this class to add singleton behaviour to your class.

Geo::GeoString

STL string replacement.

Geo::GeoStringView

STL string_view replacement.

Geo::GeoTimer

A simple task timer Construct a GeoTimer, then as each task begins simply create a local GeoTimer::Task object to automatically start and stop the clock.

Geo::GeoTokenList

A basic replacement for 'strtok'.

Geo::GeoTokenStream

A very simple utility class that wraps some common parsing functionality around a GeoTokenList.

Geo::GeoTriangle

Simple representation of a triangle.

Geo::GeoTriple

A generic triple class. Inherits things like CopyConstructible or Assignable from its argument types.

Geo::GeoUniqueDelegatePtr

Given the lack of a template typedef, and how common it is to want a GeoUniquePtr with Delegate dtor, adding a new class to provide this destruction policy by default.

Geo::GeoUniquePtr

A value type to take ownership of a raw object allocated on the heap and bind its life-time to the scope of this class.

Geo::GeoUniqueReleasePtr

Given the lack of a template typedef, and how common it is to want a GeoUniquePtr with Release dtor, adding a new class to provide this destruction policy by default.

Geo::GeoV128Texture

A really simple texture where all elements are float vectors.

Geo::GeoVariant

Variant class for storing name/value pairs in a map, where the value is a subset of common value types.

Geo::GeoVector3

Single precision 3 dimensional vector class.

Geo::GeoVector4

Single precision 4 dimensional vector class.

Geo::GeoVirtualPageAllocator

Implementation of the MemoryAllocator class (on Windows) that uses VirtualAlloc and VirtualProtect to provide similar memory overwrite detection as the Application Verifier.

Geo::GeoZLibFileStream

IGeoStream implementation that saves/loads data from a zlib compressed file.

Geo::GoodRNG

A Mersenne Twister RNG.

Geo::IdentDataCompare

Comparison class for std::sort.

Geo::IdentVertLinkBuilder

A utility for identifying pairs of "identical" vertices in a vertex buffer.

Geo::IdxLink

A link between two vertices.

Geo::IffReader

An IffReader allows you to use an IGeoStream to read Iff format binary files easily.

Geo::IffTextWriter

Presents an interface compatible with IffWriter, writes a text version of the binary IFF.

Geo::IffWriter

An IffWriter allows you to use an IGeoStream to create Iff format binary files easily.

Geo::IGeoEvent

Cross platform Event class.

Geo::IGeoInputStream

An IGeoInputStream allows you to read memory/files in a consistent manner, and is an extension point for users wishing to control where data is stored.

Geo::IGeoProgressProxy

An interface for informing a client about the current progress of an operation.

Geo::IGeoRayTracingContext

Ray-tracing context.

Geo::IGeoReleasable

A class implementing IGeoReleasable is usually created by the Enlighten libraries and so must have Release() called in order to return the memory.

Geo::IGeoSerialisable

A class implementing IGeoSerialisable adds the ability to save and load instances of the type from an IGeoStream.

Geo::IGeoStream

An IGeoStream allows you to read/write memory/files in a consistent manner, and is an extension point for users wishing to control where data is stored.

Geo::InitRayTracing

Small helper class to ensure init/cleanup are called when object is created/destroyed.

Geo::IRtMesh

An interface used by the raytracers to fill their internal mesh data structures.

Geo::ITerminalCmdHandler

A class that provides this interface can process tty string commands.

Geo::ITerminalDelegate

Handles tty initialisation events.

Geo::ITerminalInputHandler

Class providing this interface is a source of tty commands and may need polling.

Geo::ITerminalOutputHandler

A class that provides this interface can display tty output strings.

Geo::Matrix

Matrix definition.

Geo::Matrix4x4

Single-precision 4x4 matrix class.

Geo::MemoryAllocator

Class used to override memory allocation and freeing.

Geo::NonCopyable

Base class for classes that are meant to be noncopyable.

Geo::Optional

Class allowing a value object (integer, string, etc) to be optional, by storing a current value, default value and a boolean to state which is valid.

Geo::OptionalIndex

An index value that may or may not be present.

Geo::PackedInteger4

Represents four unsigned integer values packed into a single 32-bit register and named XYZW.

Geo::PackedInteger64

Stores unsigned integer values packed into a 64-bit block.

Geo::PackedIntegerArray

Stores unsigned integer values packed into 64-bit blocks.

Geo::PackedKeyValuePair

Represents a key and value that are convertible to unsigned integer.

Geo::PerformanceBlock

Scope control struct which instruments a block of code for performance analysis.

Geo::PointLeaf

A leaf node in a kd-tree of points.

Geo::PointSplit

A splitting node in a kd-tree of points.

Geo::PointSplitBounds

A bounding box for both branches of a PointSplit node.

Geo::PointSplitState

Common construction state for a point kd-tree.

Geo::QuickTaskTimer

A little class to time a task.

Geo::RastFragment

stores a fragment of a triangle i.e. a triangle clipped to a pixel box

Geo::RastTri

records details of the input triangle

Geo::RastVert

stores a rasterization vertex, including barycentric coordinates

Geo::Rayf

A single ray.

Geo::RayResult

The result of a ray intersection test.

Geo::Releasable

Base class for classes that are meant to be releasable.

Geo::RingBuffer

Ring Buffer class.

Geo::RtMesh

A mesh container that can be stored to disk and used later as a ray tracing mesh.

Geo::RtMeshGroup

A ray tracing mesh that is a collection of other meshes.

Geo::ScopedTickCounter

A class that times the interval between construction and destruction, adding this number of ticks to the counter provided.

Geo::ScopedTimer

A class that times the interval between construction and destruction, adding the number of milliseconds to the counter provided.

Geo::ScopeStartStop

Simple scope control of a class with static Start() and Stop() functions.

Geo::SHCoeff

SH Helper class.

Geo::SimpleRNG

The 'super-duper' random number generator with shuffle (an LCG).

Geo::Statistics

Result structure used for comparing input lighting buffers.

Geo::StridedArrayView

A read-only view into an array with optional stride.

Geo::StringExpression

Wraps a string concatenation expression.

Geo::TerminalProvider

Inherit from this class to provide a specific tty command processing type.

Geo::TextureWriter

Class that writes a 2D block of memory to disk as a texture file.

Geo::TreeNode

A generic tree structure, where each node contains an item by value.

Geo::TriGroupSelection

Utility for doing vertex-based chart identification.

Geo::TxtProgressBar

A simple implementation of an IGeoProgressProxy that uses printf to communicate with the user.

Geo::TypeInfo

Provides a type id for the given type.

Geo::VectorD

Double precision vector class.

Geo::WriteRangePolicy

Policy to write pointers as a range with the given element count.

Geo::ZeroedPadding

Defines an N-byte block of padding which is zeroed on construction.

...