|
AGX Dynamics 2.42.1.1
|
The Container is the base class for several of the container classes proided by AGX, such as agx::Vector and agx::HashSet. More...
#include <Container.h>
Inheritance diagram for agx::Container:Public Types | |
| enum | ClearPolicy { SHRINK_BUFFER , SHRINK_BUFFER_AVERAGED , MAINTAIN_BUFFER } |
| agxData::Values from this enumeration is passed to the subclasses' 'clear' method in order to control what should become of the container's memory. More... | |
Public Member Functions | |
| size_t | capacity () const |
| Returns the size of the memory are used by the container to store its elements. | |
| bool | empty () const |
| void * | ptr () |
| const void * | ptr () const |
| size_t | size () const |
Protected Member Functions | |
| Container () | |
| Container (const Container &other) | |
| Container (Container &&other) | |
| ~Container () | |
Protected Attributes | |
| void * | m_buffer |
| size_t | m_capacity |
| size_t | m_size |
The Container is the base class for several of the container classes proided by AGX, such as agx::Vector and agx::HashSet.
Definition at line 34 of file Container.h.
agxData::Values from this enumeration is passed to the subclasses' 'clear' method in order to control what should become of the container's memory.
Definition at line 42 of file Container.h.
|
protected |
Definition at line 102 of file Container.h.
|
protected |
Definition at line 111 of file Container.h.
References m_buffer, m_capacity, and m_size.
|
protected |
Definition at line 103 of file Container.h.
References m_buffer, m_capacity, and m_size.
|
protected |
Definition at line 127 of file Container.h.
References m_buffer, m_capacity, and m_size.
| size_t agx::Container::capacity | ( | ) | const |
Returns the size of the memory are used by the container to store its elements.
Some types of containers, e.g. the agx::Vector, will not do a reallocation until the size of the container reaches the capacity. However, this is not the case for e.g., agx::HashTable, which may perform a reallocation earlier.
Definition at line 135 of file Container.h.
References m_capacity.
Referenced by agx::Vector< T, Allocator >::operator=().
| bool agx::Container::empty | ( | ) | const |
Definition at line 136 of file Container.h.
References m_size.
Referenced by agx::WireContactConstraint::addWireParticle(), agx::WireContactSpringConstraint::calculateJacobian(), agx::createMissingTiers(), agxCollide::Space::disableForContacts(), agx::HashVector< KeyT, DataT, HashT >::empty(), agx::SetVector< DataT, HashT >::empty(), agxSDK::SimulationFrameReader::DirtySet::empty(), agx::WireContactConstraint::getInvMass(), agx::WireContactConstraint::getJacobian(), and agx::WireContactConstraint::getMass().
| void * agx::Container::ptr | ( | ) |
Definition at line 137 of file Container.h.
References m_buffer.
| const void * agx::Container::ptr | ( | ) | const |
Definition at line 138 of file Container.h.
References m_buffer.
| size_t agx::Container::size | ( | ) | const |
Definition at line 134 of file Container.h.
References m_size.
Referenced by agxData::Array< T >::Array(), agxStream::StoreObjects< T >::~StoreObjects(), agx::HashVector< KeyT, DataT, HashT >::back(), agx::SetVector< DataT, HashT >::back(), agx::WireContactConstraint::calculateD(), agx::WireContactConstraint::calculateRHS(), agxData::BufferT< T >::commit(), agx::GlobalResult::Transaction::commit(), agxSDK::copyVectors(), agx::createMissingTiers(), agxCollide::Space::disableForContacts(), agxSDK::LinkedSegmentIterator< T >::end(), agxWire::Link::findConnectingNode(), agx::ConstraintImplementation::findSecondaryConstraintGivenType(), agxData::EntityStorage::get(), agxSDK::MergeSplitThresholds::get(), agx::WireContactConstraint::getForceOnParticle(), agx::WireContactConstraint::getInvMass(), agx::WireContactConstraint::getJacobian(), agx::WireContactConstraint::getMass(), agx::ConstraintImplementation::BodyView::getNumBodies(), agxTerrain::ShovelAggregateFrictionModel::getNumPoints(), agxSDK::LinkedStructure::getNumSegments(), agxIO::MeshReader::getNumTriangles(), agxSDK::MergeSplitThresholds::getNumValues(), agxUtil::Spline::getTension(), agxSDK::CollisionGroupFilter::hasMemberGroup(), agxModel::SuctionCupSensorFilter::match(), agxModel::TireFilter::match(), agxSDK::CollisionGroupFilter::match(), agx::Vector< T, Allocator >::operator!=(), agx::VectorPOD< T, Allocator >::operator!=(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::operator=(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::operator=(), agx::Vector< T, Allocator >::operator=(), agx::VectorPOD< T, Allocator >::operator=(), agx::Vector< T, Allocator >::operator==(), agx::VectorPOD< T, Allocator >::operator==(), agx::HashVector< KeyT, DataT, HashT >::operator[](), agx::SetVector< DataT, HashT >::operator[](), agxOSG::RenderStateManager::parseUniform(), agx::HashVector< KeyT, DataT, HashT >::purge(), agx::SetVector< DataT, HashT >::purge(), agx::HashVector< KeyT, DataT, HashT >::push_back(), agx::SetVector< DataT, HashT >::push_back(), agxIO::ArgumentParser::read1(), agxIO::ArgumentParser::read2(), agxIO::ArgumentParser::read3(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::rebuild(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::rebuild(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::reserve(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::reserve(), agx::HashVector< KeyT, DataT, HashT >::size(), agx::SetVector< DataT, HashT >::size(), agxUtil::ConvexHull2D::size(), agxVehicle::TrackCurveControlPoints::size(), agxVehicle::utils::splitNonconsecutive(), agxWire::transformPointToShape(), agxWire::transformPointToWorld(), agxWire::transformVectorToShape(), agxWire::transformVectorToWorld(), and agx::Event::trigger().
|
protected |
Definition at line 96 of file Container.h.
Referenced by Container(), ~Container(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::~HashSetImplementation(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::~QuadraticProbingHashTableImplementation(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::buckets(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::buckets(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::clear(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::clear(), ptr(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::rebuild(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::rebuild(), agx::Vector< T, Allocator >::swap(), and agx::VectorPOD< T, Allocator >::swap().
|
protected |
Definition at line 95 of file Container.h.
Referenced by Container(), ~Container(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::~HashSetImplementation(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::~QuadraticProbingHashTableImplementation(), capacity(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::clear(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::clear(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::numBuckets(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::numBuckets(), agx::Vector< T, Allocator >::swap(), and agx::VectorPOD< T, Allocator >::swap().
|
protected |
Definition at line 94 of file Container.h.
Referenced by Container(), ~Container(), empty(), agx::HashSetImplementation< KeyT, HashT, AllocatorT >::numFilled(), agx::QuadraticProbingHashTableImplementation< KeyT, DataT, HashT, AllocatorT >::numFilled(), size(), agx::Vector< T, Allocator >::swap(), and agx::VectorPOD< T, Allocator >::swap().