Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
irange.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "base/src/baseqt.h"
4 #include "module/interface/dim.h"
5 
11 namespace itasca {
12  class Archive2;
13  class IThing;
14 }
15 
16 namespace itascaxd {
17  using namespace itasca;
18 
19  class IRangeElement;
20 
22 
31  class IRange {
32  public:
34  inline static const TType type_ = 0x4c815b93;
35 
37  virtual const IThing *getIThing() const=0;
39  virtual IThing * getIThing()=0;
40 
42  virtual void clear()=0;
43 
45  virtual const IRange &operator=(const IRange &ir)=0;
46 
48  virtual IRange *clone() const=0;
49 
52  virtual QString getName() const=0;
54  virtual void setName(const QString &s)=0;
55 
57  virtual bool isUnion() const=0;
60  virtual void setUnion(bool b)=0;
61 
63  virtual int getNumberOfElements() const=0;
64 
66  virtual IRangeElement *getElement(int index) const=0;
67 
69  virtual void removeElement(int index)=0;
70 
74  virtual QStringList getCommandSwitches() const=0;
75 
79  virtual const IRange *getNext() const=0;
80 
82  virtual bool recursionCheck() const=0;
83 
87  virtual void addElement(const QString &name)=0;
88 
91  virtual bool isIn(const IThing *t) const=0;
92 
95  virtual bool isIn(const IThing &t) const=0;
96 
99  virtual bool isIn(const DVect &pos) const=0;
100 
104  virtual bool isIn(qint64 index,const TType &type) const=0;
105 
107  virtual QObject *getQObject()=0;
108 
109  virtual void save(Archive2 &a) const=0;
110  virtual bool restore(Archive2 &a,quint64 label)=0;
111  virtual void remap(Archive2 &a)=0;
112 
113  virtual void saveElement(Archive2 &a,int index) const=0;
114  virtual bool restoreElement(Archive2 &a)=0;
115 
117  virtual bool getIsFish() const=0;
118 
125  virtual bool isThreadSafe() const=0;
126 
130  virtual void setUseHidden(bool b)=0;
131 
133  virtual bool getUseHidden() const=0;
134 
140  virtual bool setSelected(bool b)=0;
141 
143  virtual bool getSelected() const=0;
144 
145  virtual bool setDeselected(bool b)=0;
146  virtual bool getDeselected() const=0;
147 
148  virtual bool isDefault() const=0;
149 
151  virtual void destroy()=0;
152 
153  // SIGNALS
155  virtual void elementChanged(IRangeElement *elem,int index)=0;
157  virtual void notChanged(IRangeElement *elem,bool notChanged)=0;
159  virtual void byChanged(IRangeElement *elem,const QString &)=0;
161  virtual void listChanged(int length)=0;
163  virtual void nameChanged(const QString &name)=0;
165  virtual void unionChanged(bool b)=0;
166  };
167 } // namespace itascaxd
168 // EoF
Interface to a filter, used as the main method for filtering objects.
Definition: irange.h:31
namespace Itasca
Definition: basememory.cpp:9
Base class for items that will be stored in containers.
Definition: ithing.h:31
DIM - Provides code portability between 2D and 3D codes.
Interface to a filter element, which is a member of a IRange..
Definition: irangeelement.h:18
unsigned int TType
class type indicator
Definition: basedef.h:41
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4
EXPORT_TAG const char * getName()
Definition: fishexample.cpp:43
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:145
All default base headers if Qt is being used.