Itasca C++ Interface
Loading...
Searching...
No Matches
iudtype.h
Go to the documentation of this file.
1#pragma once
2// iudtype.h
3
9namespace itasca {
10 class IThing;
11}
12
13namespace itascaxd {
14 using namespace itasca;
15
16 class IUDData;
17 class IUDPos;
18
20
23 template <class T> class IUDType {
24 public:
26 typedef T value_type;
27
29 virtual IThing * getIThing()=0;
31 virtual const IThing * getIThing() const=0;
33 virtual IUDPos * getIUDPos()=0;
35 virtual const IUDPos * getIUDPos() const=0;
37 virtual IUDType<T> * getNext()=0;
39 virtual const IUDType<T> *getNext() const=0;
40
42 virtual T getValue() const=0;
44 virtual void setValue(const T &t)=0;
45 };
46} // namespace itascaxd
47// EoF
Base class for items that will be stored in containers.
Definition ithing.h:30
Interface to the position in space of user-defined data that requires it.
Definition iudpos.h:23
Interface to data values of different types associated with position in space, as user-defined data.
Definition iudtype.h:23
virtual T getValue() const =0
Returns the current value associated with the user-defined data.
virtual const IUDPos * getIUDPos() const =0
Returns a const IUDPos interface to this object.
T value_type
Specifies the value stored in the object.
Definition iudtype.h:26
virtual IUDType< T > * getNext()=0
Returns the next object in whatever global container it exists in.
virtual void setValue(const T &t)=0
Sets the value associated with the user-defined data.
virtual const IUDType< T > * getNext() const =0
Returns the const next object in whatever global container it exists in.
virtual IThing * getIThing()=0
Returns an IThing interface to this object.
virtual IUDPos * getIUDPos()=0
Returns an IUDPos interface to this object.
virtual const IThing * getIThing() const =0
Returns a const IThing interface to this object.
namespace Itasca
Definition basememory.cpp:14
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4