#define PROJECTFILE_NOACCESS 201
#define PROJECTFILE_CORRUPTED 202
+#define PROJECTPATH_NOACCESS 203
#define BLOCKFILE_NOACCESS 301
#define BLOCKFILE_CORRUPTED 302
#define IMPLFILE_NOPATTERN 403
#define VHDLFILE_NOACCESS 501
+#define VHDLFILE_CORRUPTED 502
#define BLOCKPATH_NOACCESS 601
#define BLOCK_NULL 1001
#define BLOCK_INVALID_TYPE 1002
+
// exceptions for interfaces manipulations
#define IFACE_NULL 2001
#define IFACE_INVALID_TYPE 2002
#define IFACE_MULTIPLICITY_REACHED 2003
+#define IFACE_BLOCK_NOCLKRST 2004
+#define IFACE_GROUP_NOCLKRST 2005
+#define IFACE_TOP_NOCLKRSTGEN 2006
// exceptions for block items manipulations
#define BLOCKITEM_NULL 3001
// exception for patterns
#define INVALID_REFBLOCK_USE 10001
-#define INVALID_DELTA_CP 10002 // delta and CP are not consistent (NB: used during admittance computation)
+#define INVALID_GROUPBLOCK_USE 10002
+#define INVALID_DELTA_CP 10003 // delta and CP are not consistent (NB: used during admittance computation)
#define EVAL_PARAM_UNKNOWN 10101 // a variable used in an expression is not defined as a block parameter
#define EVAL_PARAM_NOVALUE 10102 // can't get the double value of a block parameter
#define IP_END_NULLCOL 10503 // IP ends with anull column (normally not possible during compat. check)
#define AP_TOO_SHORT 10504 // AP has been badly computed, leading to a AP shorter than needed (NB: it is an abnormal case)
+#define IFACE_NOT_CONNECTED 10601 // an interface with control is not connected => impossible to analyz the graph
using namespace std;
using namespace Qt;
public:
- Exception(int _id);
+ Exception(int _id, void* _source = NULL);
Exception(const Exception& other);
inline int getType() { return id; }
inline void setMessage(QString _message) { message = _message; }
inline QString getMessage() { return message; }
QString getDefaultMessage();
+ inline void* getSource() { return source; }
private:
int id;
QString message;
+ void* source;
};