Itasca C++ Interface
Loading...
Searching...
No Matches
igplist.h
Go to the documentation of this file.
1//igplist.h
2#pragma once
3
9#include "utility/interface/igroup.h"
10
11namespace itasca {
12 class IContainer;
13 class IThing;
14}
15
16namespace zone {
17 using namespace itasca;
18
19 class IGp;
20 class IGpData;
21
24 class IGpList {
25 public:
27 virtual const IThing * getIThing() const=0;
29 virtual IThing * getIThing()=0;
31 virtual const IContainer * getIContainer() const=0;
33 virtual IContainer * getIContainer() =0;
36 virtual const IGp * getFirstGp() const=0;
39 virtual IGp * getFirstGp()=0;
41 virtual uint32 getGridPointType() const=0;
43 virtual const IGp * findGridPointWithID(uint64 id) const=0;
47 virtual const IGp * findGridPoint(const DVect &vec,uint32 excludeMask=0) const=0;
51 virtual IGp * findGridPoint(const DVect &vec,uint32 excludeMask=0) =0;
54 virtual IGp * findGridPoint(const DVect &vec,const IGroupID &group) =0;
56 virtual uint64 getNGp() const=0;
63 virtual IGp * findGpLive(const DVect &dv3)=0;
65 virtual uint32 getFapNotice() const=0;
67 virtual uint32 getFobNotice() const=0;
69 virtual uint32 getGpExtraNotice() const=0;
71 virtual uint32 getPorePressureNotice() const=0;
73 virtual uint32 getTemperatureNotice() const=0;
75 virtual uint32 getGeometryNotice() const=0;
77 virtual uint32 getFixityNotice() const =0;
79 virtual uint32 getVelocityNotice() const=0;
81 virtual uint32 getDisplacementNotice() const=0;
83 virtual uint32 getSaturationNotice() const=0;
85 virtual uint32 getNullChangeNotice() const=0;
86 virtual uint32 getMultiplierNotice() const=0;
97 virtual int claimBit() const=0;
99 virtual void releaseBit(int bit) const=0;
110 virtual int claimValue() const=0;
112 virtual void releaseValue(int bit) const=0;
114 virtual IGpData * createIGpData() const=0;
115 };
116} // namespace zone
117// EoF
Interface for containers of IThings.
Definition icontainer.h:21
Definition igroup.h:82
Base class for items that will be stored in containers.
Definition ithing.h:30
Interface that allows access to gridpoint scalar data in a generic way.
Definition igpdata.h:27
Interface to provide access to a gridpoint.
Definition igp.h:56
Interface to the global list of all grid points.
Definition igplist.h:24
virtual uint32 getGpExtraNotice() const =0
Returns the tag for the gridpoint extra variable change notice.
virtual const IGp * findGridPoint(const DVect &vec, uint32 excludeMask=0) const =0
virtual IContainer * getIContainer()=0
Returns a pointer to the IContainer interface representing the global list of grid points.
virtual uint32 getFapNotice() const =0
Returns the tag for the gridpoint applied force change notice.
virtual const IContainer * getIContainer() const =0
Returns a const pointer to the IContainer interface representing the global list of grid points.
virtual uint32 getFobNotice() const =0
Returns the tag for the gridpoint out of balance change force notice.
virtual const IGp * findGridPointWithID(uint64 id) const =0
Given a gridpoint id, returns a const pointer to the gridpoint.
virtual int claimBit() const =0
Claims a bit from the gridpoints utility bit field.
virtual uint32 getDisplacementNotice() const =0
Returns the tag for the gridpoint displacement change notice.
virtual IGp * findGridPoint(const DVect &vec, uint32 excludeMask=0)=0
virtual IGp * getFirstGp()=0
virtual IGp * findGridPoint(const DVect &vec, const IGroupID &group)=0
virtual IGpData * createIGpData() const =0
Returns a pointer to a new IGpData object. This pointer must be destroyed by the caller.
virtual uint32 getFixityNotice() const =0
Returns the tag for the gridpoint fix condition change notice.
virtual uint32 getGridPointType() const =0
Returns the gridpoint general type.
virtual void releaseValue(int bit) const =0
Releases a value index back to the gridpoints utility value array. Thread-safe.
virtual int claimValue() const =0
Claims a value index from the gridpoints utility value array.
virtual uint64 getNGp() const =0
Returns the number of grid points in the list.
virtual const IThing * getIThing() const =0
Returns a const pointer to an IThing interface representing the IGpList.
virtual uint32 getSaturationNotice() const =0
Returns the tag for the gridpoint saturation change notice.
virtual IThing * getIThing()=0
Returns a pointer to an IThing interface representing the IGpList.
virtual uint32 getTemperatureNotice() const =0
Returns the tag for the gridpoint temperature change notice.
virtual const IGp * getFirstGp() const =0
virtual uint32 getGeometryNotice() const =0
Returns the tag for the gridpoint geometry change notice.
virtual uint32 getVelocityNotice() const =0
Returns the tag for the gridpoint velocity change notice.
virtual IGp * findGpLive(const DVect &dv3)=0
virtual uint32 getPorePressureNotice() const =0
Returns the tag for the gridpoint pore-pressure change notice.
virtual uint32 getNullChangeNotice() const =0
Returns the tag for the zone null change notice.
virtual void releaseBit(int bit) const =0
Releases a bit index previously obtained with claimBit(). Thread-safe.
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
namespace Itasca
Definition basememory.cpp:14