![]() |
ezEngine Release 25.08
|
#include <DynamicArray.h>
Inherits ezDynamicArrayBase< T >.
Inherited by ezHybridArray< ezUniquePtr< class ezBakedProbesComponent >, 2 >, ezHybridArray< ezUInt8, 256 >, ezHybridArray< ezArrayPtr< ezUInt8 >, 4 >, ezHybridArray< ezPluginInitCallback, 2 >, ezHybridArray< ezHybridString, 2 >, ezHybridArray< ezViewHandle, 6 >, ezHybridArray< ezFolderChangedEvent, 2 >, ezHybridArray< ezAbstractObjectNode::Property, 16 >, ezHybridArray< const ezPropertyAttribute *, 2, ezStaticsAllocatorWrapper >, ezHybridArray< ezAction *, 4 >, ezHybridArray< ezTreeNode< ezActionMapDescriptor > *, 8 >, ezHybridArray< ezUniquePtr< ezActorPlugin >, 4 >, ezHybridArray< ezUniquePtr< ezActor >, 8 >, ezHybridArray< ezUniquePtr< ezActorApiService >, 8 >, ezHybridArray< ezIkJointEntry, 2 >, ezHybridArray< Receiver, 2 >, ezHybridArray< const asITypeInfo *, 16 >, ezHybridArray< ezUInt32, 8 >, ezHybridArray< GraphInstance, 2 >, ezHybridArray< ezAnimGraphPinDataBoneWeights, 4 >, ezHybridArray< ezAnimGraphPinDataLocalTransforms, 4 >, ezHybridArray< ezAnimGraphPinDataModelTransforms, 2 >, ezHybridArray< ezUInt16, 1 >, ezHybridArray< ConnectionTo, 2 >, ezHybridArray< ezArrayPtr< ozz::math::SoaTransform >, 8 >, ezHybridArray< ezDynamicArray< ezMat4Template, ezAlignedAllocatorWrapper >, 2 >, ezHybridArray< ezAnimPoseGeneratorCommandSampleTrack, 4 >, ezHybridArray< ezAnimPoseGeneratorCommandRestPose, 1 >, ezHybridArray< ezAnimPoseGeneratorCommandCombinePoses, 1 >, ezHybridArray< ezAnimPoseGeneratorCommandLocalToModelPose, 1 >, ezHybridArray< ezAnimPoseGeneratorCommandSampleEventTrack, 2 >, ezHybridArray< ezAnimPoseGeneratorCommandAimIK, 2 >, ezHybridArray< ezAnimPoseGeneratorCommandTwoBoneIK, 2 >, ezHybridArray< ezAnimPoseGeneratorCommandID, 4 >, ezHybridArray< float, 4 >, ezHybridArray< ezArrayPtr< const ozz::math::SimdFloat4 >, 4 >, ezHybridArray< ezMaterialResourceSlot, 8 >, ezHybridArray< ezApplicationFileSystemConfig::DataDirConfig, 4 >, ezHybridArray< ezApplicationPluginConfig::PluginConfig, 8 >, ezHybridArray< ezPlatformProfile *, 8 >, ezHybridArray< ezUuid, 32 >, ezHybridArray< ezHybridString, 16 >, ezHybridArray< ezAssetDocumentGenerator::ImportMode, 4 >, ezHybridArray< const ezPropertyAttribute *, 2 >, ezHybridArray< ezHashedString, 2 >, ezHybridArray< ezBreakableShard2D::Edge, 6 >, ezHybridArray< ezColorGradient::ColorCP, 8 >, ezHybridArray< ezColorGradient::AlphaCP, 8 >, ezHybridArray< ezColorGradient::IntensityCP, 8 >, ezHybridArray< ezCommand *, 8 >, ezHybridArray< vk::CommandBuffer, 4 >, ezHybridArray< ezCommandTransaction *, 4 >, ezHybridArray< ezCommand *, 4 >, ezHybridArray< ezConsoleString, 16 >, ezHybridArray< ezUuid, 16 >, ezHybridArray< ezHybridString, 1 >, ezHybridArray< ezCreatureLeg, 4 >, ezHybridArray< ezCurve1D::ControlPoint, 8 >, ezHybridArray< ezVec2Template, 24 >, ezHybridArray< ezDGMLGraph::Node, 16 >, ezHybridArray< ezDGMLGraph::Connection, 32 >, ezHybridArray< ezDGMLGraph::PropertyType, 16 >, ezHybridArray< ezUniquePtr< ezDataDirectory::ArchiveReaderUncompressed >, 4 >, ezHybridArray< ezDataDirectory::ArchiveReaderUncompressed *, 4 >, ezHybridArray< ezDataDirectory::FolderReader *, 4 >, ezHybridArray< ezDataDirectory::FolderWriter *, 4 >, ezHybridArray< ezTypedResourceHandle, 1 >, ezHybridArray< ezHybridArray< ezSharedPtr< ezDefaultStateProvider >, 4 >, 1 >, ezHybridArray< ezSharedPtr< ezDefaultStateProvider >, 4 >, ezHybridArray< Chunk, 16 >, ezHybridArray< vk::DescriptorPool, 4 >, ezHybridArray< ezDocumentManager *, 16 >, ezHybridArray< ezUniquePtr< ezPin >, 6 >, ezHybridArray< ezDocumentObject *, 8 >, ezHybridArray< const ezDocument *, 16 >, ezHybridArray< ezReflectedClass *, 1 >, ezHybridArray< DuplicatedObject, 4 >, ezHybridArray< ezHybridString, 8 >, ezHybridArray< ezEditableSkeletonJoint *, 4 >, ezHybridArray< ezEditableSkeletonBoneShape, 1 >, ezHybridArray< ezEngineProcessViewContext *, 4 >, ezHybridArray< ezHashedString, 4 >, ezHybridArray< ezPropertyAttribute *, 2 >, ezHybridArray< ezExpressionAST::Node *, 64 >, ezHybridArray< const ezToken *, 32 >, ezHybridArray< DataPerCategory, 32 >, ezHybridArray< const ezRenderData *, 16 >, ezHybridArray< ID3D11Query *, 4 >, ezHybridArray< vk::Fence, 4 >, ezHybridArray< Factory, 4 >, ezHybridArray< ezDataDirectoryInfo, 16 >, ezHybridArray< ezHybridString, 4 >, ezHybridArray< DataDir, 8 >, ezHybridArray< ezFileserveClientContext::DataDir, 8 >, ezHybridArray< ezDynamicArray< ezUInt8 > *, 4 >, ezHybridArray< const ezPropertyAttribute *, 4 >, ezHybridArray< ezShaderResourceBinding, 1 >, ezHybridArray< ezGALBufferHandle, 1 >, ezHybridArray< ID3D11ShaderResourceView *, 16 >, ezHybridArray< const ezGALResourceBase *, 16 >, ezHybridArray< ID3D11UnorderedAccessView *, 16 >, ezHybridArray< vk::ClearValue, EZ_GAL_MAX_RENDERTARGET_COUNT+1 >, ezHybridArray< const ezGALBufferVulkan *, 6 >, ezHybridArray< vk::Buffer, 6 >, ezHybridArray< ezUInt32, 6 >, ezHybridArray< ezGALSwapChain *, 8 >, ezHybridArray< ezGALDeviceVulkan::SemaphoreInfo, 3 >, ezHybridArray< vk::Fence, 2 >, ezHybridArray< vk::Format, 6 >, ezHybridArray< XrSwapchainImageD3D11KHR, 3 >, ezHybridArray< ezGALTextureHandle, 3 >, ezHybridArray< ezGALBindGroupLayoutHandle, EZ_GAL_MAX_BIND_GROUPS >, ezHybridArray< ezShaderResourceBinding, 8 >, ezHybridArray< ezShaderVertexInputAttribute, 8 >, ezHybridArray< const ezGALSharedTexture *, 3 >, ezHybridArray< ezUInt64, 3 >, ezHybridArray< ezGALPlatformSharedHandle, 3 >, ezHybridArray< vk::Image, 3 >, ezHybridArray< ezUInt32, EZ_GAL_MAX_VERTEX_BUFFER_COUNT >, ezHybridArray< vk::VertexInputAttributeDescription, EZ_GAL_MAX_VERTEX_ATTRIBUTE_COUNT >, ezHybridArray< vk::VertexInputBindingDescription, EZ_GAL_MAX_VERTEX_BUFFER_COUNT >, ezHybridArray< ezUInt32, 4 >, ezHybridArray< char, Size >, ezHybridArray< float, 16 >, ezHybridArray< ezUInt64, 16 >, ezHybridArray< PastedObject, 4 >, ezHybridArray< ezInternal::RenderDataCacheEntry, 4 >, ezHybridArray< ResourceReloadFunctionData, 8 >, ezHybridArray< ezDynamicArray *, 8, ezLocalAllocatorWrapper >, ezHybridArray< JSONState, 32 >, ezHybridArray< ezUInt8, 4096 >, ezHybridArray< ezJSONReader::Element, 32 >, ezHybridArray< ezShatterPoint, 2 >, ezHybridArray< ezJoltSurfaceResourceSlot, 8 >, ezHybridArray< ezJoltContactEvents::InteractionContact, 8 >, ezHybridArray< ezJoltContactEvents::SlideAndRollInfo, 4 >, ezHybridArray< JPH::RefConst< JPH::PhysicsMaterial >, 1 >, ezHybridArray< ezDynamicArray *, 1 >, ezHybridArray< JPH::Shape *, 1 >, ezHybridArray< JPH::CollideShapeResult, 32, ezAlignedAllocatorWrapper >, ezHybridArray< ezTime, 4 >, ezHybridArray< ezJoltCharacterControllerComponent *, 4 >, ezHybridArray< ezKrautMaterialDescriptor, 4 >, ezHybridArray< ezUInt16, 16 >, ezHybridArray< ezKrautAssetMaterial, 8 >, ezHybridArray< ezKrautTreeResourceDescriptor::MaterialData, 8 >, ezHybridArray< ezUuid, 1 >, ezHybridArray< ezAnimGraphLocalPoseInputPin, 2 >, ezHybridArray< ezAnimGraphNumberInputPin, 2 >, ezHybridArray< ezAnimGraphBoolInputPin, 2 >, ezHybridArray< ezManipulatorAdapter *, 8 >, ezHybridArray< ezPropertySelection, 8 >, ezHybridArray< ezMeshResourceDescriptor::Material, 8 >, ezHybridArray< ezMeshResourceDescriptor::SubMesh, 8 >, ezHybridArray< ezMiniAudioSingleton::SoundGroup, 4 >, ezHybridArray< ezDynamicArray, 1 >, ezHybridArray< Data, 16 >, ezHybridArray< ezOBJLoader::FaceVertex, 4 >, ezHybridArray< ezPropertyPathStep, 2 >, ezHybridArray< DdlState, 32 >, ezHybridArray< ezUInt8 *, 16 >, ezHybridArray< ezOpenDdlReaderElement *, 16 >, ezHybridArray< ezOpenDdlWriter::DdlState, 16 >, ezHybridArray< Action, 4 >, ezHybridArray< Vec2Action, 4 >, ezHybridArray< ezParticleEffectFloatParam, 2 >, ezHybridArray< ezParticleEffectColorParam, 2 >, ezHybridArray< ezParticleSystemDescriptor *, 4 >, ezHybridArray< ezParticleEventReactionFactory *, 4 >, ezHybridArray< FloatParameter, 2 >, ezHybridArray< ColorParameter, 2 >, ezHybridArray< ezParticleSystemInstance *, 4 >, ezHybridArray< ezParticleEventReaction *, 4 >, ezHybridArray< Binding, 4 >, ezHybridArray< ezParticleEmitterFactory *, 1 >, ezHybridArray< ezParticleInitializerFactory *, 4 >, ezHybridArray< ezParticleBehaviorFactory *, 4 >, ezHybridArray< ezParticleFinalizerFactory *, 2 >, ezHybridArray< ezParticleTypeFactory *, 2 >, ezHybridArray< ezParticleEmitter *, 2 >, ezHybridArray< ezParticleInitializer *, 6 >, ezHybridArray< ezParticleBehavior *, 6 >, ezHybridArray< ezParticleFinalizer *, 2 >, ezHybridArray< ezParticleType *, 2 >, ezHybridArray< StreamInfo, 16 >, ezHybridArray< ezPathComponent *, 32 >, ezHybridArray< ezPhysicsCastResult, 16 >, ezHybridArray< ezPhysicsOverlapResult, 16 >, ezHybridArray< vk::BufferMemoryBarrier, 8 >, ezHybridArray< vk::ImageMemoryBarrier, 8 >, ezHybridArray< ezUInt32, 1 >, ezHybridArray< SubBufferState, 1 >, ezHybridArray< SubElementState, 1 >, ezHybridArray< const ezRTTI *, 16 >, ezHybridArray< ezUInt8, 64 >, ezHybridArray< ezVec3Template, 2 >, ezHybridArray< ezUInt8, 4 >, ezHybridArray< ezTypedResourceHandle< class ezPrefabResource >, 4 >, ezHybridArray< ezSimdMat4f, 8, ezAlignedAllocatorWrapper >, ezHybridArray< ezSharedPtr< const ezProcGenInternal::VertexColorOutput >, 2 >, ezHybridArray< ezProcVertexColorMapping, 2 >, ezHybridArray< ezProcVertexColorOutputDesc, 2 >, ezHybridArray< StdStreamInfo, 2 >, ezHybridArray< ezProcessingStreamProcessor *, 8 >, ezHybridArray< ezProcessingStream *, 8 >, ezHybridArray< ezUInt64, 64 >, ezHybridArray< ezProfilingSystem::ThreadInfo, 16 >, ezHybridArray< ezProjectileSurfaceInteraction, 12 >, ezHybridArray< ezUuid, 3 >, ezHybridArray< ezPropertyAnimComponent::GameObjectBinding, 4 >, ezHybridArray< ezPropertyAnimComponent::ComponentFloatBinding, 4 >, ezHybridArray< ezPropertyAnimComponent::ColorBinding, 4 >, ezHybridArray< ResolvedStep, 2 >, ezHybridArray< ezCurve1D, 4 >, ezHybridArray< ezVec2Template, 4 >, ezHybridArray< ezDynamicMenuAction::Item, 16 >, ezHybridArray< ezQtEngineViewWidget *, 4 >, ezHybridArray< ezEditorInputContext *, 8 >, ezHybridArray< PointCategory, 8 >, ezHybridArray< ezQtEventTrackWidget::SelectedPoint, 32 >, ezHybridArray< Point, 32 >, ezHybridArray< SpecialDir, 4 >, ezHybridArray< DataDirInfo, 8 >, ezHybridArray< ezSelectionContext *, 8 >, ezHybridArray< ezGameAppInputConfig, 32 >, ezHybridArray< ezHashedString, 32 >, ezHybridArray< const ezLogEntry *, 16 >, ezHybridArray< ezDocument *, 32 >, ezHybridArray< ezQtPin *, 6 >, ezHybridArray< ezQtConnection *, 6 >, ezHybridArray< State, 8 >, ezHybridArray< ezVariant, 16 >, ezHybridArray< ezQtViewWidgetContainer *, 4 >, ezHybridArray< PropertyData, 16 >, ezHybridArray< Template, 32 >, ezHybridArray< ezActionDescriptor *, 32 >, ezHybridArray< KeyValue, 16 >, ezHybridArray< ezToolsTag, 32 >, ezHybridArray< const ezAbstractProperty *, 8 >, ezHybridArray< QueryPool *, 2 >, ezHybridArray< vk::QueryPool, 8 >, ezHybridArray< QueryPool *, 8 >, ezHybridArray< ezUniquePtr< ezReflectionPool::Data::WorldReflectionData >, 2 >, ezHybridArray< ezAmbientCube< ezColorLinear16f >, 64 >, ezHybridArray< ezTypedResourceHandle, 6 *s_uiNumReflectionProbeCubeMaps >, ezHybridArray< ezReflectionProbeRef, 4 >, ezHybridArray< ezReflectionProbeUpdater::ProbeUpdateInfo::Step, 8 >, ezHybridArray< ezRenderContext *, 4 >, ezHybridArray< CategoryData, 32 >, ezHybridArray< ezRenderPipelinePassConnection *, 4 >, ezHybridArray< const ezRenderPipelineNodePin *, 4 >, ezHybridArray< const ezRTTI *, 8 >, ezHybridArray< TaskDataUpdateContent, 24 >, ezHybridArray< TaskDataDataLoad, 8 >, ezHybridArray< ezRingBufferTracker::FrameData, 4 >, ezHybridArray< ezHashedString, 1 >, ezHybridArray< ezAnimationClip1D, 4 >, ezHybridArray< ezAnimationClip2D, 8 >, ezHybridArray< ezTag, 1 >, ezHybridArray< ezHybridString, 6 >, ezHybridArray< ezUInt8, 6 >, ezHybridArray< Part, 4 >, ezHybridArray< vk::Semaphore, 4 >, ezHybridArray< ezUniquePtr< ComponentType >, 2 >, ezHybridArray< ezPermutationVar, 16 >, ezHybridArray< ezShaderConstant, 16 >, ezHybridArray< ezTextSection, 16 >, ezHybridArray< ezVariant, 8 >, ezHybridArray< ezShaderParser::EnumValue, 16 >, ezHybridArray< ezShaderParser::AttributeDefinition, 4 >, ezHybridArray< ezShaderResourceDefinition, 8 >, ezHybridArray< ezHashedString, 16 >, ezHybridArray< JPH::Ref< JPH::ConvexShape >, 128 >, ezHybridArray< ezShatterPoint, 8 >, ezHybridArray< StagingBufferPool *, 8 >, ezHybridArray< ezStandardJSONWriter::JSONState, 16 >, ezHybridArray< ezBlackboardCondition, 2 >, ezHybridArray< char, 128 >, ezHybridArray< ezUInt16, BufferSize >, ezHybridArray< ezUInt32, BufferSize >, ezHybridArray< char, BufferSize >, ezHybridArray< wchar_t, BufferSize >, ezHybridArray< ezSubstanceGraphOutput, 8 >, ezHybridArray< ezSubstanceGraph, 2 >, ezHybridArray< ezSurfaceInteraction, 16 >, ezHybridArray< ezAnimGraphBoneWeightsInputPin, 2 >, ezHybridArray< ezAnimGraphLocalPoseInputPin, 4 >, ezHybridArray< ezSharedPtr< ezTask >, 16 >, ezHybridArray< ezTaskGroupID, 4 >, ezHybridArray< ezTaskGroupID, 8 >, ezHybridArray< ezTexConvSliceChannelMapping, 6 >, ezHybridArray< ezTextureAtlasCreationDesc::Layer, 4 >, ezHybridArray< ezUniquePtr< ezTranslator >, 16 >, ezHybridArray< ezTranslator *, 4 >, ezHybridArray< ezTreeNode< T > *, 8 >, ezHybridArray< UniformBufferPool *, 8 >, ezHybridArray< ezVertexStreamInfo, 8 >, ezHybridArray< const ezDocumentObject *, 8 >, ezHybridArray< ezVisualScriptCompiler::CompiledFunction, 16 >, ezHybridArray< ezVisualShaderPinDescriptor, 4 >, ezHybridArray< ezReflectedPropertyDescriptor, 4 >, ezHybridArray< ezInt8, 4 >, ezHybridArray< ezVisualizerAdapter *, 8 >, ezHybridArray< ezWorldModuleConfig::InterfaceImpl, 8 >, and ezHybridArray< T, Size, AllocatorWrapper >.
Public Member Functions | |
EZ_DECLARE_MEM_RELOCATABLE_TYPE () | |
ezDynamicArray (ezAllocator *pAllocator) | |
ezDynamicArray (const ezDynamicArray< T, AllocatorWrapper > &other) | |
ezDynamicArray (const ezDynamicArrayBase< T > &other) | |
ezDynamicArray (const ezArrayPtr< const T > &other) | |
ezDynamicArray (ezDynamicArray< T, AllocatorWrapper > &&other) | |
ezDynamicArray (ezDynamicArrayBase< T > &&other) | |
void | operator= (const ezDynamicArray< T, AllocatorWrapper > &rhs) |
void | operator= (const ezDynamicArrayBase< T > &rhs) |
void | operator= (const ezArrayPtr< const T > &rhs) |
void | operator= (ezDynamicArray< T, AllocatorWrapper > &&rhs) noexcept |
void | operator= (ezDynamicArrayBase< T > &&rhs) noexcept |
![]() | |
void | Reserve (ezUInt32 uiCapacity) |
Expands the array so it can at least store the given capacity. | |
void | Compact () |
Tries to compact the array to avoid wasting memory. The resulting capacity is at least 'GetCount' (no elements get removed). Will deallocate all data, if the array is empty. | |
ezAllocator * | GetAllocator () const |
Returns the allocator that is used by this instance. | |
ezUInt64 | GetHeapMemoryUsage () const |
Returns the amount of bytes that are currently allocated on the heap. | |
void | Swap (ezDynamicArrayBase< T > &other) |
swaps the contents of this array with another one | |
![]() | |
ezArrayBase () | |
Constructor. | |
~ezArrayBase () | |
Destructor. | |
void | operator= (const ezArrayPtr< const T > &rhs) |
Copies the data from some other contiguous array into this one. | |
operator ezArrayPtr< const T > () const | |
Conversion to const ezArrayPtr. | |
operator ezArrayPtr< T > () | |
Conversion to ezArrayPtr. | |
bool | operator== (const ezArrayBase< T, ezDynamicArrayBase< T > > &rhs) const |
Compares this array to another contiguous array type. | |
EZ_ADD_DEFAULT_OPERATOR_NOTEQUAL (const ezArrayBase< T, ezDynamicArrayBase< T > > &) | |
bool | operator< (const ezArrayBase< T, ezDynamicArrayBase< T > > &rhs) const |
Compares this array to another contiguous array type. | |
bool | operator< (const ezArrayPtr< const T > &rhs) const |
Compares this array to another contiguous array type. | |
const T & | operator[] (ezUInt32 uiIndex) const |
Returns the element at the given index. Does bounds checks in debug builds. | |
T & | operator[] (ezUInt32 uiIndex) |
Returns the element at the given index. Does bounds checks in debug builds. | |
void | SetCount (ezUInt32 uiCount) |
Resizes the array to have exactly uiCount elements. Default constructs extra elements if the array is grown. | |
void | SetCount (ezUInt32 uiCount, const T &fillValue) |
Resizes the array to have exactly uiCount elements. Constructs all new elements by copying the FillValue. | |
void | SetCountUninitialized (ezUInt32 uiCount) |
Resizes the array to have exactly uiCount elements. Extra elements might be uninitialized. | |
void | EnsureCount (ezUInt32 uiCount) |
Ensures the container has at least uiCount elements. Ie. calls SetCount() if the container has fewer elements, does nothing otherwise. | |
ezUInt32 | GetCount () const |
Returns the number of active elements in the array. | |
bool | IsEmpty () const |
Returns true, if the array does not contain any elements. | |
void | Clear () |
Clears the array. | |
bool | Contains (const T &value) const |
Checks whether the given value can be found in the array. O(n) complexity. | |
void | InsertAt (ezUInt32 uiIndex, const T &value) |
Inserts value at index by shifting all following elements. | |
void | InsertAt (ezUInt32 uiIndex, T &&value) |
Inserts value at index by shifting all following elements. | |
void | InsertRangeAt (ezUInt32 uiIndex, const ezArrayPtr< const T > &range) |
Inserts all elements in the range starting at the given index, shifting the elements after the index. | |
bool | RemoveAndCopy (const T &value) |
Removes the first occurrence of value and fills the gap by shifting all following elements. | |
bool | RemoveAndSwap (const T &value) |
Removes the first occurrence of value and fills the gap by swapping in the last element. | |
void | RemoveAtAndCopy (ezUInt32 uiIndex, ezUInt32 uiNumElements=1) |
Removes the element at index and fills the gap by shifting all following elements. | |
void | RemoveAtAndSwap (ezUInt32 uiIndex, ezUInt32 uiNumElements=1) |
Removes the element at index and fills the gap by swapping in the last element. | |
ezUInt32 | IndexOf (const T &value, ezUInt32 uiStartIndex=0) const |
Searches for the first occurrence of the given value and returns its index or ezInvalidIndex if not found. | |
ezUInt32 | LastIndexOf (const T &value, ezUInt32 uiStartIndex=ezInvalidIndex) const |
Searches for the last occurrence of the given value and returns its index or ezInvalidIndex if not found. | |
T & | ExpandAndGetRef () |
Grows the array by one element and returns a reference to the newly created element. | |
T * | ExpandBy (ezUInt32 uiNumNewItems) |
Expands the array by N new items and returns a pointer to the first new one. | |
void | PushBack (const T &value) |
Pushes value at the end of the array. | |
void | PushBack (T &&value) |
Pushes value at the end of the array. | |
void | PushBackUnchecked (const T &value) |
Pushes value at the end of the array. Does NOT ensure capacity. | |
void | PushBackUnchecked (T &&value) |
Pushes value at the end of the array. Does NOT ensure capacity. | |
void | PushBackRange (const ezArrayPtr< const T > &range) |
Pushes all elements in range at the end of the array. Increases the capacity if necessary. | |
void | PopBack (ezUInt32 uiCountToRemove=1) |
Removes count elements from the end of the array. | |
T & | PeekBack () |
Returns the last element of the array. | |
const T & | PeekBack () const |
Returns the last element of the array. | |
void | Sort (const Comparer &comparer) |
Sort with explicit comparer. | |
void | Sort () |
Sort with default comparer. | |
T * | GetData () |
Returns a pointer to the array data, or nullptr if the array is empty. | |
const T * | GetData () const |
Returns a pointer to the array data, or nullptr if the array is empty. | |
ezArrayPtr< T > | GetArrayPtr () |
Returns an array pointer to the array data, or an empty array pointer if the array is empty. | |
ezArrayPtr< const T > | GetArrayPtr () const |
Returns an array pointer to the array data, or an empty array pointer if the array is empty. | |
ezArrayPtr< typename ezArrayPtr< T >::ByteType > | GetByteArrayPtr () |
Returns a byte array pointer to the array data, or an empty array pointer if the array is empty. | |
ezArrayPtr< typename ezArrayPtr< const T >::ByteType > | GetByteArrayPtr () const |
Returns a byte array pointer to the array data, or an empty array pointer if the array is empty. | |
ezUInt32 | GetCapacity () const |
Returns the reserved number of elements that the array can hold without reallocating. | |
Protected Member Functions | |
ezDynamicArray (T *pInplaceStorage, ezUInt32 uiCapacity, ezAllocator *pAllocator) | |
![]() | |
ezDynamicArrayBase (ezAllocator *pAllocator) | |
Creates an empty array. Does not allocate any data yet. | |
ezDynamicArrayBase (T *pInplaceStorage, ezUInt32 uiCapacity, ezAllocator *pAllocator) | |
ezDynamicArrayBase (const ezDynamicArrayBase< T > &other, ezAllocator *pAllocator) | |
Creates a copy of the given array. | |
ezDynamicArrayBase (ezDynamicArrayBase< T > &&other, ezAllocator *pAllocator) | |
Moves the given array into this one. | |
ezDynamicArrayBase (const ezArrayPtr< const T > &other, ezAllocator *pAllocator) | |
Creates a copy of the given array. | |
~ezDynamicArrayBase () | |
Destructor. | |
void | operator= (const ezDynamicArrayBase< T > &rhs) |
Copies the data from some other contiguous array into this one. | |
void | operator= (ezDynamicArrayBase< T > &&rhs) noexcept |
Moves the data from some other contiguous array into this one. | |
T * | GetElementsPtr () |
const T * | GetElementsPtr () const |
![]() | |
void | DoSwap (ezArrayBase< T, ezDynamicArrayBase< T > > &other) |
Additional Inherited Members | |
![]() | |
using | const_iterator = const T * |
using | const_reverse_iterator = const_reverse_pointer_iterator< T > |
using | iterator = T * |
using | reverse_iterator = reverse_pointer_iterator< T > |
![]() | |
T * | m_pElements |
Element-type access to m_Data. | |
ezUInt32 | m_uiCount |
The number of elements used from the array. | |
ezUInt32 | m_uiCapacity |
The number of elements which can be stored in the array without re-allocating. | |