Itasca C++ Interface
Loading...
Searching...
No Matches
Public Member Functions | List of all members
block::IZoneArray Class Referenceabstract

Container to store ZoneThings. ID of BlockThing is stored in offset $KZCPP in Fortran zone linked list. More...

#include <izonearray.h>

Public Member Functions

virtual const IThinggetIThing () const =0
 Returns a const pointer to an IThing interface representing the IZoneArray.
 
virtual IThinggetIThing ()=0
 Returns a pointer to an IThing interface representing the IZoneArray.
 
virtual const IContainergetIContainer () const =0
 Returns a const pointer to the IContainer.
 
virtual IContainergetIContainer ()=0
 Returns a pointer to the IContainer.
 
virtual const IZoneThingfindZoneWithID (quint64 id) const =0
 Returns a const pointer to the zone, IZone, with the ID id, or 0 if the zone does not exist.
 
virtual IZoneThingfindZoneWithID (quint64 id)=0
 Returns a pointer to the zone, IZone, with the ID id, or 0 if the zone does not exist.
 
virtual quint32 getZoneType () const =0
 Returns the zone type identifier.
 
virtual quint32 getZoneFaceType () const =0
 Returns the zone face type identifier.
 
virtual quint64 getNumZones () const =0
 Returns the number of zones.
 
virtual int claimBit () const =0
 Claims a bit from the zones utility bit field.
 
virtual void releaseBit (int bit) const =0
 Releases a bit index previously obtained with claimBit(). Thread-safe.
 
virtual int claimValue () const =0
 Claims a bit from the zones utility value array.
 
virtual void releaseValue (int bit) const =0
 Releases a value index back to the zones utility value array. Thread-safe.
 
virtual IZoneDatacreateIZoneData () const =0
 
virtual uint getZoneExtraNotice () const =0
 Returns the tag for the zone extra variable change notice.
 
virtual uint getGroupNotice () const =0
 Returns the tag for the zone group change notice.
 
virtual uint getGeometryNotice () const =0
 Returns the tag for the zone geometry change notice.
 
virtual uint getStressNotice () const =0
 Returns the tag for the zone stress change notice.
 
virtual uint getPropertyNotice () const =0
 Returns the tag for the zone property change notice.
 
virtual uint getModelNotice () const =0
 Returns the tag for the zone model change notice.
 
virtual uint getMaterialNotice () const =0
 Returns the tag for the zone material change notice.
 
virtual uint getHideNotice () const =0
 Returns the tag for the zone hide state notice.
 
virtual IZoneThingfindZoneContaining (const DVect &v, bool visible=false, double dEpsFac=1.0e-5, const itascaxd::IRange *range=nullptr) const =0
 
virtual const IZoneThingfindZone (const DVect &v, bool visible=false) const =0
 Return zone closest to input location.
 
virtual itascaxd::IFetchPropertymakeFetchProperty (const string &prop) const =0
 

Detailed Description

Container to store ZoneThings. ID of BlockThing is stored in offset $KZCPP in Fortran zone linked list.

Member Function Documentation

◆ claimBit()

virtual int block::IZoneArray::claimBit ( ) const
pure virtual

Claims a bit from the zones utility bit field.

It is sometimes useful to be able to store flags and data in a zone during calculations unrelated to the actual model cycling logic.
Two utility arrays are available for this purpose, they are primarily intended to be briefly claimed, used, and then released for back for use in other algorithms.
claimBit() returns a bit index that can be used with the IZone::getBit() and IZone::setBit() functions. This function is thread-safe (IZone::getBit and IZone::setBit are not).

See also
releaseBit() IZone::setBit() IZone::getBit()

◆ claimValue()

virtual int block::IZoneArray::claimValue ( ) const
pure virtual

Claims a bit from the zones utility value array.

It is sometimes useful to be able to store flags and data in a zone during calculations unrelated to the actual model cycling logic.
Two utility arrays are available for this purpose, they are primarily intended to be briefly claimed, used, and then released for back for use in other algorithms.
claimValue() returns a value index that can be used with the IZone::getValue() and IZone::setValue() functions. This function is thread-safe (IZone::getValue and IZone::setValue are not).

See also
releaseBit() IZone::setValue() IZone::getValue()

◆ createIZoneData()

virtual IZoneData * block::IZoneArray::createIZoneData ( ) const
pure virtual

Returns the pointer to IZoneData. This pointer must be destroyed. The IZoneData object can be used to retrieve scalar data from a zone.

◆ findZoneContaining()

virtual IZoneThing * block::IZoneArray::findZoneContaining ( const DVect & v,
bool visible = false,
double dEpsFac = 1.0e-5,
const itascaxd::IRange * range = nullptr ) const
pure virtual

Returns a pointer to the zone, IZonething, containing the location vec , or 0 if the zone does not exist. Set visible to true to prevent searching hidden or excavated blocks


The documentation for this class was generated from the following file: