1 | #ifndef morpheo_tools_viewer_bdd_baseV_h |
---|
2 | #define morpheo_tools_viewer_bdd_baseV_h |
---|
3 | |
---|
4 | #include <iostream> |
---|
5 | #include <list> |
---|
6 | #include <iterator> |
---|
7 | #include <qlist.h> |
---|
8 | #include <qmap.h> |
---|
9 | #include "Tools/Viewer/Bdd/include/LimitParam.h" |
---|
10 | #include "Tools/Viewer/Bdd/include/Group.h" |
---|
11 | #include "Tools/Viewer/Bdd/include/Param.h" |
---|
12 | |
---|
13 | |
---|
14 | #include "Tools/Viewer/Bdd/include/BaseP.h" |
---|
15 | #include "Tools/Viewer/Bdd/include/Signal.h" |
---|
16 | |
---|
17 | using namespace std; |
---|
18 | namespace morpheo{ |
---|
19 | namespace tools{ |
---|
20 | namespace viewer{ |
---|
21 | namespace bdd{ |
---|
22 | |
---|
23 | class BaseV |
---|
24 | { |
---|
25 | private: |
---|
26 | string comment; |
---|
27 | QList<morpheo::tools::viewer::bdd::BaseP> *pos; |
---|
28 | QList<string> *listcomp; //dico index |
---|
29 | /*list of groups(singleton)*/ |
---|
30 | QList<string> *listgroup; //dico index |
---|
31 | QList<morpheo::tools::viewer::bdd::Group> *groups; |
---|
32 | /*list of limit parameters names*/ |
---|
33 | QMap<string,morpheo::tools::viewer::bdd::LimitParam> *limitp; |
---|
34 | /*list of sources link(generation file)*/ |
---|
35 | QMap<string,string> *link_src; |
---|
36 | /*list of destination link(generation file)*/ |
---|
37 | QMap<string,string> *link_dest; |
---|
38 | |
---|
39 | protected: |
---|
40 | public: |
---|
41 | //accessors |
---|
42 | morpheo::tools::viewer::bdd::BaseP get_BasePos(string v); |
---|
43 | morpheo::tools::viewer::bdd::Signal *getSignal(morpheo::tools::viewer::bdd::BaseP *top,string c,PortMap *dest); |
---|
44 | QList<morpheo::tools::viewer::bdd::BaseP> *getBaseP(); |
---|
45 | string getLinksrc(string name); |
---|
46 | string getLinkdest(string name); |
---|
47 | void setComment(string s); |
---|
48 | |
---|
49 | //constructors |
---|
50 | BaseV(); |
---|
51 | ~BaseV (); |
---|
52 | |
---|
53 | void addBaseP(morpheo::tools::viewer::bdd::BaseP *p,string t); |
---|
54 | /*search a group*/ |
---|
55 | morpheo::tools::viewer::bdd::Group searchGroup(string v); |
---|
56 | ///*search a param*/ |
---|
57 | //morpheo::tools::viewer::bdd::Param searchParam(string group,string v); |
---|
58 | /*search a limitparam*/ |
---|
59 | morpheo::tools::viewer::bdd::LimitParam searchLimitParam(string v); |
---|
60 | |
---|
61 | /*modify a parameter value*/ |
---|
62 | void modifyValue(string nomgroup,string nameparam,int value); |
---|
63 | |
---|
64 | /*add/remove group*/ |
---|
65 | int modifyGroup(string namegroup,int step); |
---|
66 | int nbGroup(string namegroup); |
---|
67 | |
---|
68 | /*add a source link */ |
---|
69 | void addLinksrc(string name,string src); |
---|
70 | /*add a dest link */ |
---|
71 | void addLinkdest(string name,string dest); |
---|
72 | |
---|
73 | /*add a group with his level*/ |
---|
74 | void addGroup(morpheo::tools::viewer::bdd::Group *g); |
---|
75 | /*add limit param*/ |
---|
76 | void addLimitParam(morpheo::tools::viewer::bdd::LimitParam *lp); |
---|
77 | /*take group list*/ |
---|
78 | QList<morpheo::tools::viewer::bdd::Group> *getGroups(); |
---|
79 | /*take LimitParam list*/ |
---|
80 | QList<morpheo::tools::viewer::bdd::LimitParam> getLimitParam(); |
---|
81 | /*debug*/ |
---|
82 | void afficheLimitParamConsole(); |
---|
83 | void afficheParamConsole(); |
---|
84 | void afficheBaseConsole(); |
---|
85 | };//end class BaseV |
---|
86 | |
---|
87 | };//end bdd |
---|
88 | };//end viewer |
---|
89 | };//end tools |
---|
90 | };//end morpheo |
---|
91 | |
---|
92 | #endif |
---|