Vector base class. More...

#include <Urho3D/Container/VectorBase.h>

Inherited by Urho3D::PODVector< bool >, Urho3D::PODVector< const Urho3D::SourceBatch2D * >, Urho3D::PODVector< float >, Urho3D::PODVector< int >, Urho3D::PODVector< PrimitiveType >, Urho3D::PODVector< unsigned >, Urho3D::PODVector< unsigned char >, Urho3D::PODVector< unsigned short >, Urho3D::PODVector< Urho3D::Batch * >, Urho3D::PODVector< Urho3D::Batch >, Urho3D::PODVector< Urho3D::BatchGroup * >, Urho3D::PODVector< Urho3D::Billboard >, Urho3D::PODVector< Urho3D::Camera * >, Urho3D::PODVector< Urho3D::CharLocation >, Urho3D::PODVector< Urho3D::CollisionShape * >, Urho3D::PODVector< Urho3D::Component * >, Urho3D::PODVector< Urho3D::ConstantBuffer * >, Urho3D::PODVector< Urho3D::Constraint * >, Urho3D::PODVector< Urho3D::DebugLine >, Urho3D::PODVector< Urho3D::DebugTriangle >, Urho3D::PODVector< Urho3D::DecalVertex >, Urho3D::PODVector< Urho3D::Drawable * >, Urho3D::PODVector< Urho3D::Drawable2D * >, Urho3D::PODVector< Urho3D::GPUObject * >, Urho3D::PODVector< Urho3D::HashMap * >, Urho3D::PODVector< Urho3D::IKConstraint * >, Urho3D::PODVector< Urho3D::IKEffector * >, Urho3D::PODVector< Urho3D::InstanceData >, Urho3D::PODVector< Urho3D::IntRect >, Urho3D::PODVector< Urho3D::IntVector2 >, Urho3D::PODVector< Urho3D::Light * >, Urho3D::PODVector< Urho3D::Matrix3x4 >, Urho3D::PODVector< Urho3D::NavAreaStub >, Urho3D::PODVector< Urho3D::Node * >, Urho3D::PODVector< Urho3D::Object * >, Urho3D::PODVector< Urho3D::OcclusionBatch >, Urho3D::PODVector< Urho3D::Pair< unsigned, unsigned > >, Urho3D::PODVector< Urho3D::Particle >, Urho3D::PODVector< Urho3D::PhysicsRaycastResult2D >, Urho3D::PODVector< Urho3D::ProfilerBlock * >, Urho3D::PODVector< Urho3D::RayQueryResult >, Urho3D::PODVector< Urho3D::ReplicationState * >, Urho3D::PODVector< Urho3D::RigidBody * >, Urho3D::PODVector< Urho3D::RigidBody2D * >, Urho3D::PODVector< Urho3D::ScenePassInfo >, Urho3D::PODVector< Urho3D::SoundSource * >, Urho3D::PODVector< Urho3D::Spriter::Animation * >, Urho3D::PODVector< Urho3D::Spriter::CharacterMap * >, Urho3D::PODVector< Urho3D::Spriter::Entity * >, Urho3D::PODVector< Urho3D::Spriter::File * >, Urho3D::PODVector< Urho3D::Spriter::Folder * >, Urho3D::PODVector< Urho3D::Spriter::MainlineKey * >, Urho3D::PODVector< Urho3D::Spriter::MapInstruction * >, Urho3D::PODVector< Urho3D::Spriter::Ref * >, Urho3D::PODVector< Urho3D::Spriter::SpatialTimelineKey * >, Urho3D::PODVector< Urho3D::Spriter::Timeline * >, Urho3D::PODVector< Urho3D::StaticModelGeometryData >, Urho3D::PODVector< Urho3D::TrailPoint >, Urho3D::PODVector< Urho3D::UIBatch >, Urho3D::PODVector< Urho3D::UIElement * >, Urho3D::PODVector< Urho3D::Vector2 >, Urho3D::PODVector< Urho3D::Vector3 >, Urho3D::PODVector< Urho3D::VertexElement >, Urho3D::PODVector< Urho3D::Zone * >, Urho3D::PODVector< T >, Urho3D::Vector< T >, Urho3D::Vector< asIScriptContext * >, Urho3D::Vector< float >, Urho3D::Vector< String >, Urho3D::Vector< Urho3D::AnimationControl >, Urho3D::Vector< Urho3D::AnimationKeyFrame >, Urho3D::Vector< Urho3D::AnimationStateTrack >, Urho3D::Vector< Urho3D::AnimationTriggerPoint >, Urho3D::Vector< Urho3D::AttributeInfo >, Urho3D::Vector< Urho3D::Billboard * >, Urho3D::Vector< Urho3D::Bone >, Urho3D::Vector< Urho3D::ColorFrame >, Urho3D::Vector< Urho3D::DelayedCall >, Urho3D::Vector< Urho3D::FileSelectorEntry >, Urho3D::Vector< Urho3D::IndexBufferDesc >, Urho3D::Vector< Urho3D::LightBatchQueue >, Urho3D::Vector< Urho3D::LightQueryResult >, Urho3D::Vector< Urho3D::ModelMorph >, Urho3D::Vector< Urho3D::Node * >, Urho3D::Vector< Urho3D::OcclusionBufferData >, Urho3D::Vector< Urho3D::Pair< int, Urho3D::String > >, Urho3D::Vector< Urho3D::Pair< Urho3D::String, CubeMapFace > >, Urho3D::Vector< Urho3D::Pair< Urho3D::WeakPtr< Urho3D::RenderSurface >, Urho3D::WeakPtr< Urho3D::Viewport > > >, Urho3D::Vector< Urho3D::Particle2D >, Urho3D::Vector< Urho3D::PerThreadSceneResult >, Urho3D::Vector< Urho3D::PhysicsWorld2D::ContactInfo >, Urho3D::Vector< Urho3D::PODVector< unsigned > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::CustomGeometryVertex > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::Drawable * > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::GeometryDesc > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::GlyphLocation > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::Matrix3x4 * > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::Matrix3x4 > >, Urho3D::Vector< Urho3D::PODVector< Urho3D::Vector3 > >, Urho3D::Vector< Urho3D::Quaternion >, Urho3D::Vector< Urho3D::RemoteEvent >, Urho3D::Vector< Urho3D::RenderPathCommand >, Urho3D::Vector< Urho3D::RenderTargetInfo >, Urho3D::Vector< Urho3D::ScratchBuffer >, Urho3D::Vector< Urho3D::ShadowBatchQueue >, Urho3D::Vector< Urho3D::SharedArrayPtr< unsigned char > >, Urho3D::Vector< Urho3D::SharedArrayPtr< Urho3D::DepthValue > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::AnimationState > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Component > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::DbConnection > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::FileWatcher > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Geometry > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Image > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::IndexBuffer > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Material > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Node > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::OcclusionBuffer > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::PackageFile > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Pass > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::ResourceRouter > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::ShaderVariation > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Texture2D > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Tile2D > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::TileMapObject2D > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::UIElement > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::VertexBuffer > >, Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Viewport > >, Urho3D::Vector< Urho3D::SharedPtr< WorkerThread > >, Urho3D::Vector< Urho3D::SourceBatch >, Urho3D::Vector< Urho3D::SourceBatch2D >, Urho3D::Vector< Urho3D::String >, Urho3D::Vector< Urho3D::TechniqueEntry >, Urho3D::Vector< Urho3D::TextureFrame >, Urho3D::Vector< Urho3D::TmxLayer2D * >, Urho3D::Vector< Urho3D::TrailPoint * >, Urho3D::Vector< Urho3D::UIElement * >, Urho3D::Vector< Urho3D::VAnimEventFrame >, Urho3D::Vector< Urho3D::VAnimKeyFrame >, Urho3D::Vector< Urho3D::Variant >, Urho3D::Vector< Urho3D::Vector >, Urho3D::Vector< Urho3D::Vector2 >, Urho3D::Vector< Urho3D::Vector< Urho3D::SharedPtr< Urho3D::Geometry > > >, Urho3D::Vector< Urho3D::Vertex2D >, Urho3D::Vector< Urho3D::VertexBufferDesc >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::CollisionShape2D > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::Component > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::Constraint2D > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::NavArea > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::Node > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::RigidBody2D > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::TerrainPatch > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::TileMapLayer2D > >, Urho3D::Vector< Urho3D::WeakPtr< Urho3D::View > >, and Urho3D::Vector< Variant >.

Public Member Functions

 VectorBase ()
 Construct.
 
void Swap (VectorBase &rhs)
 Swap with another vector.
 

Static Protected Member Functions

static unsigned char * AllocateBuffer (unsigned size)
 

Protected Attributes

unsigned size_
 Size of vector.
 
unsigned capacity_
 Buffer capacity.
 
unsigned char * buffer_
 Buffer.
 

Detailed Description

Vector base class.

Note that to prevent extra memory use due to vtable pointer, VectorBase intentionally does not declare a virtual destructor and therefore VectorBase pointers should never be used.


The documentation for this class was generated from the following files:
  • Source/Urho3D/Container/VectorBase.h
  • Source/Urho3D/Container/VectorBase.cpp