Scicos: fix some C++ warnings
[scilab.git] / scilab / modules / scicos / src / cpp / view_scilab / BlockAdapter.hxx
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2014-2014 - Scilab Enterprises - Clement DAVID
4  *
5  *  This file must be used under the terms of the CeCILL.
6  *  This source file is licensed as described in the file COPYING, which
7  *  you should have received as part of this distribution.  The terms
8  *  are also available at
9  *  http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10  *
11  */
12
13 #ifndef BLOCKADAPTER_HXX_
14 #define BLOCKADAPTER_HXX_
15
16 #include <string>
17 #include <vector>
18
19 #include "internal.hxx"
20 #include "list.hxx"
21
22 #include "BaseAdapter.hxx"
23 #include "adapters_utilities.hxx"
24 #include "model/Block.hxx"
25
26 namespace org_scilab_modules_scicos
27 {
28 namespace view_scilab
29 {
30
31 class BlockAdapter : public BaseAdapter<BlockAdapter, org_scilab_modules_scicos::model::Block>
32 {
33 public:
34     BlockAdapter(const Controller& c, org_scilab_modules_scicos::model::Block* adaptee);
35     BlockAdapter(const BlockAdapter& adapter);
36     ~BlockAdapter();
37
38     static const std::wstring getSharedTypeStr()
39     {
40         return L"Block";
41     }
42
43     std::wstring getTypeStr();
44     std::wstring getShortTypeStr();
45
46     types::InternalType* getDocContent() const;
47     void setDocContent(types::InternalType* v);
48
49     types::List* getListObjects() const;
50     void setListObjects(types::List* blocks);
51
52     std::vector<link_t> getFrom() const;
53     void setFrom(const std::vector<link_t>& from);
54     std::vector<link_t> getTo() const;
55     void setTo(const std::vector<link_t>& to);
56
57     types::InternalType* getContribContent() const;
58     void setContribContent(types::InternalType* contrib);
59
60 private:
61     types::InternalType* doc_content;
62
63     // The following content represents the child diagram (in 'model.rpar')
64
65     // Child links info
66     std::vector<link_t> from_vec;
67     std::vector<link_t> to_vec;
68     // Child elements info
69     types::List* list_objects;
70     // child diagram info
71     types::InternalType* contrib_content;
72 };
73
74 } /* namespace view_scilab */
75 } /* namespace org_scilab_modules_scicos */
76
77 #endif /* BLOCKADAPTER_HXX_ */