Itasca C++ Interface
igenericzone.h
Go to the documentation of this file.
1 #pragma once
7 #include "base/src/basedef.h"
8 
9 namespace itasca {
10  class IThing;
11 }
12 namespace utility {
13  using itasca::IThing;
14 }
15 
16 namespace models {
23  class IGenericZone {
24  public:
26  inline static const TType type_ = 0x4e13414f;
28  virtual const utility::IThing *getIThing() const=0;
30  virtual utility::IThing * getIThing()=0;
32  virtual TType getType() const=0;
33  };
34 } // namespace models
35 // EoF
Base type definitions for the engine.
Base class for items that will be stored in containers.
Definition: ithing.h:30
Generic base class for the zone interface made available to the constitutive model system.
Definition: igenericzone.h:23
static const TType type_
The type of IGenericZone, used in the alternate dynamic typing system based on IThing.
Definition: igenericzone.h:26
virtual utility::IThing * getIThing()=0
Returns a pointer to an IThing interface representing this object, or nullptr if such an interface is...
virtual TType getType() const =0
Returns the actual type of the fully derived class represented by this object.
virtual const utility::IThing * getIThing() const =0
Returns a pointer to a const IThing interface representing this object, or nullptr if such an interfa...
uint32 TType
class type indicator
Definition: basedef.h:46
namespace Itasca
Definition: basememory.cpp:10
The Constitutive Model interface library.
Definition: conmodel.cpp:7