OGRE-Next: OgreCommon.h File Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
OgreCommon.h File Reference
`#include "OgrePrerequisites.h"`
`#include "Hash/MurmurHash3.h"`
`#include "OgreHeaderPrefix.h"`
`#include "OgreSilentMemory.h"`
`#include "OgreHeaderSuffix.h"`

## Classes
struct | Ogre::Box
| Structure used to define a box in a 3-D integer space. More...
class | Ogre::HashedVector< T >
| A hashed vector. More...
struct | Ogre::LightClosest
| Used as the light list, sorted. More...
struct | Ogre::LightListInfo
| Holds all lights in SoA after being culled over all frustums. More...
struct | Ogre::RenderingMetrics
struct | Ogre::SampleDescription
| Opaque struct that holds effective FSAA (MSAA, CSAA, etc.) mode. More...
struct | Ogre::StencilParams
struct | Ogre::StencilStateOp
struct | Ogre::TRect< T >

## Namespaces
namespace | Ogre
| bswapNN may be defined as macros in <sys/endian.h> or <sys/bswap.h>
namespace | Ogre::MsaaPatterns

## Typedefs
typedef StdMap< String, String > | Ogre::AliasTextureNamePairList
| Alias / Texture name pair (first = alias, second = texture name).
typedef StdMap< String, String > | Ogre::BinaryOptionList
typedef TRect< float > | Ogre::FloatRect
| Structure used to define a rectangle in a 2-D floating point space.
typedef FastArray< Light * > | Ogre::LightArray
typedef FastArray< LightClosest > | Ogre::LightClosestArray
typedef HashedVector< LightClosest > | Ogre::LightList
typedef StdMap< String, String > | Ogre::NameValuePairList
| Name / value parameter pair (first = name, second = value).
typedef TRect< Real > | Ogre::RealRect
| Structure used to define a rectangle in a 2-D floating point space, subject to double / single floating point settings.
typedef TRect< long > | Ogre::Rect
| Structure used to define a rectangle in a 2-D integer space.
typedef _StringBase | Ogre::String
typedef int | Ogre::TrackVertexColourType
| An enumeration describing which material properties should track the vertex colours.
typedef StdMap< String, bool > | Ogre::UnaryOptionList
typedef StdVector< Window * > | Ogre::WindowList
| Render window container.

## Enumerations
enum | Ogre::ClipResult { Ogre::CLIPPED_NONE = 0 , Ogre::CLIPPED_SOME = 1 , Ogre::CLIPPED_ALL = 2 }
| Generic result of clipping. More...
enum | Ogre::ColourBufferType { Ogre::CBT_BACK = 0x0 , Ogre::CBT_BACK_LEFT , Ogre::CBT_BACK_RIGHT }
| Defines the colour buffer types. More...
enum | Ogre::CompareFunction { Ogre::CMPF_ALWAYS_FAIL , Ogre::CMPF_ALWAYS_PASS , Ogre::CMPF_LESS , Ogre::CMPF_LESS_EQUAL , Ogre::CMPF_EQUAL , Ogre::CMPF_NOT_EQUAL , Ogre::CMPF_GREATER_EQUAL , Ogre::CMPF_GREATER , Ogre::NUM_COMPARE_FUNCTIONS }
| Comparison functions used for the depth/stencil buffer operations and others. More...
enum | Ogre::CullingMode { Ogre::CULL_NONE = 1 , Ogre::CULL_CLOCKWISE = 2 , Ogre::CULL_ANTICLOCKWISE = 3 }
| Hardware culling modes based on vertex winding. More...
enum | Ogre::FilterOptions { Ogre::FO_NONE , Ogre::FO_POINT , Ogre::FO_LINEAR , Ogre::FO_ANISOTROPIC }
| Filtering options for textures / mipmaps. More...
enum | Ogre::FilterType { Ogre::FT_MIN , Ogre::FT_MAG , Ogre::FT_MIP }
enum | Ogre::FogMode { Ogre::FOG_NONE , Ogre::FOG_EXP , Ogre::FOG_EXP2 , Ogre::FOG_LINEAR }
| Fog modes. More...
enum | Ogre::FrameBufferType { Ogre::FBT_COLOUR = 0x1 , Ogre::FBT_DEPTH = 0x2 , Ogre::FBT_STENCIL = 0x4 }
| Defines the frame buffer types. More...
enum | Ogre::IndexType { Ogre::IT_16BIT , Ogre::IT_32BIT }
enum | Ogre::InstanceManagerFlags { Ogre::IM_USE16BIT = 0x0001 , Ogre::IM_VTFBESTFIT = 0x0002 , Ogre::IM_VTFBONEMATRIXLOOKUP = 0x0004 , Ogre::IM_USEBONEDUALQUATERNIONS = 0x0008 , Ogre::IM_USEONEWEIGHT = 0x0010 , Ogre::IM_FORCEONEWEIGHT = 0x0020 , Ogre::IM_USEALL = IM_USE16BIT | IM_VTFBESTFIT | IM_USEONEWEIGHT }
| Flags for the Instance Manager when calculating ideal number of instances per batch. More...
enum | Ogre::MsaaPatterns::MsaaPatterns { Ogre::MsaaPatterns::Undefined , Ogre::MsaaPatterns::Standard , Ogre::MsaaPatterns::Center , Ogre::MsaaPatterns::CenterZero }
enum | Ogre::OperationType { Ogre::OT_POINT_LIST = 1 , Ogre::OT_LINE_LIST = 2 , Ogre::OT_LINE_STRIP = 3 , Ogre::OT_TRIANGLE_LIST = 4 , Ogre::OT_TRIANGLE_STRIP = 5 , Ogre::OT_TRIANGLE_FAN = 6 , Ogre::OT_PATCH_1_CONTROL_POINT = 7 , Ogre::OT_PATCH_2_CONTROL_POINT = 8 , Ogre::OT_PATCH_3_CONTROL_POINT = 9 , Ogre::OT_PATCH_4_CONTROL_POINT = 10 , Ogre::OT_PATCH_5_CONTROL_POINT = 11 , Ogre::OT_PATCH_6_CONTROL_POINT = 12 , Ogre::OT_PATCH_7_CONTROL_POINT = 13 , Ogre::OT_PATCH_8_CONTROL_POINT = 14 , Ogre::OT_PATCH_9_CONTROL_POINT = 15 , Ogre::OT_PATCH_10_CONTROL_POINT = 16 , Ogre::OT_PATCH_11_CONTROL_POINT = 17 , Ogre::OT_PATCH_12_CONTROL_POINT = 18 , Ogre::OT_PATCH_13_CONTROL_POINT = 19 , Ogre::OT_PATCH_14_CONTROL_POINT = 20 , Ogre::OT_PATCH_15_CONTROL_POINT = 21 , Ogre::OT_PATCH_16_CONTROL_POINT = 22 , Ogre::OT_PATCH_17_CONTROL_POINT = 23 , Ogre::OT_PATCH_18_CONTROL_POINT = 24 , Ogre::OT_PATCH_19_CONTROL_POINT = 25 , Ogre::OT_PATCH_20_CONTROL_POINT = 26 , Ogre::OT_PATCH_21_CONTROL_POINT = 27 , Ogre::OT_PATCH_22_CONTROL_POINT = 28 , Ogre::OT_PATCH_23_CONTROL_POINT = 29 , Ogre::OT_PATCH_24_CONTROL_POINT = 30 , Ogre::OT_PATCH_25_CONTROL_POINT = 31 , Ogre::OT_PATCH_26_CONTROL_POINT = 32 , Ogre::OT_PATCH_27_CONTROL_POINT = 33 , Ogre::OT_PATCH_28_CONTROL_POINT = 34 , Ogre::OT_PATCH_29_CONTROL_POINT = 35 , Ogre::OT_PATCH_30_CONTROL_POINT = 36 , Ogre::OT_PATCH_31_CONTROL_POINT = 37 , Ogre::OT_PATCH_32_CONTROL_POINT = 38 }
enum | Ogre::OrientationMode { Ogre::OR_DEGREE_0 = 0 , Ogre::OR_DEGREE_90 = 1 , Ogre::OR_DEGREE_180 = 2 , Ogre::OR_DEGREE_270 = 3 , Ogre::OR_PORTRAIT = OR_DEGREE_0 , Ogre::OR_LANDSCAPERIGHT = OR_DEGREE_90 , Ogre::OR_LANDSCAPELEFT = OR_DEGREE_270 }
| Specifies orientation mode. More...
enum | Ogre::PolygonMode { Ogre::PM_POINTS = 1 , Ogre::PM_WIREFRAME = 2 , Ogre::PM_SOLID = 3 }
| The polygon mode to use when rasterising. More...
enum | Ogre::PrePassMode { Ogre::PrePassNone , Ogre::PrePassCreate , Ogre::PrePassUse }
enum | Ogre::SceneMemoryMgrTypes { Ogre::SCENE_DYNAMIC = 0 , Ogre::SCENE_STATIC , Ogre::NUM_SCENE_MEMORY_MANAGER_TYPES }
| The types of NodeMemoryManager & ObjectMemoryManagers. More...
enum | Ogre::ShadeOptions { Ogre::SO_FLAT , Ogre::SO_GOURAUD , Ogre::SO_PHONG }
| Light shading modes. More...
enum | Ogre::ShaderType { Ogre::VertexShader , Ogre::PixelShader , Ogre::GeometryShader , Ogre::HullShader , Ogre::DomainShader , Ogre::NumShaderTypes }
enum | Ogre::SortMode { Ogre::SM_DIRECTION , Ogre::SM_DISTANCE }
| Sort mode for billboard-set and particle-system. More...
enum | Ogre::StencilOperation { Ogre::SOP_KEEP , Ogre::SOP_ZERO , Ogre::SOP_REPLACE , Ogre::SOP_INCREMENT , Ogre::SOP_DECREMENT , Ogre::SOP_INCREMENT_WRAP , Ogre::SOP_DECREMENT_WRAP , Ogre::SOP_INVERT }
| Enum describing the various actions which can be taken on the stencil buffer. More...
enum | Ogre::StereoModeType { Ogre::SMT_NONE = 0x0 , Ogre::SMT_FRAME_SEQUENTIAL }
| Defines the stereo mode types. More...
enum | Ogre::TextureFilterOptions { Ogre::TFO_NONE , Ogre::TFO_BILINEAR , Ogre::TFO_TRILINEAR , Ogre::TFO_ANISOTROPIC }
| High-level filtering options providing shortcuts to settings the minification, magnification and mip filters. More...
enum | Ogre::TrackVertexColourEnum { Ogre::TVC_NONE = 0x0 , Ogre::TVC_AMBIENT = 0x1 , Ogre::TVC_DIFFUSE = 0x2 , Ogre::TVC_SPECULAR = 0x4 , Ogre::TVC_EMISSIVE = 0x8 }
enum | Ogre::VertexPass { Ogre::VpNormal , Ogre::VpShadow , Ogre::NumVertexPass }
enum | Ogre::WaveformType { Ogre::WFT_SINE , Ogre::WFT_TRIANGLE , Ogre::WFT_SQUARE , Ogre::WFT_SAWTOOTH , Ogre::WFT_INVERSE_SAWTOOTH , Ogre::WFT_PWM }
| Enumerates the wave types usable with the Ogre engine. More...

## Functions
template<typename T>
T | Ogre::alignToNextMultiple (T offset, T alignment)
| Aligns the input 'offset' to the next multiple of 'alignment'.
size_t | Ogre::alignToPreviousMult (size_t offset, size_t alignment)
| This function has been purposedly not been named 'alignToPrevMultiple' to avoid easily confusing it with alignToNextMultiple.
template<typename T>
T::iterator | Ogre::efficientVectorRemove (T &container, typename T::iterator &iterator)
| Used for efficient removal in std::vector and std::deque (like an std::list) However it assumes the order of elements in container is not important or something external to the container holds the index of an element in it (but still should be kept deterministically across machines) Basically it swaps the iterator with the last iterator, and pops back Returns the next iterator.
uint32 | Ogre::FastHash (const char *data, int len, uint32 hashSoFar=0)
| Fast general hashing algorithm.
int _OgreExport | Ogre::findCommandLineOpts (int numargs, char **argv, UnaryOptionList &unaryOptList, BinaryOptionList &binOptList)
| Locate command-line options of the unary form '-blah' and of the binary form '-blah foo', passing back the index of the next non-option.
template<typename T>
uint32 | Ogre::HashCombine (uint32 hashSoFar, const T &data)
| Combine hashes with same style as boost::hash_combine.

## Variables
const String | Ogre::BLANKSTRING
| Constant blank string, useful for returning by ref where local does not exist.
static const uint8 | Ogre::c_allGraphicStagesMask
static const uint8 | Ogre::c_computeStageMask = 1u << NumShaderTypes