Salome HOME
PR: merge from branch BR_UnitTests tag mergeto_trunk_17oct05
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_AttributeTableOfString_i.hxx
1 //  File   : SALOMEDS_AttributeTableOfString_i.hxx
2 //  Author : Sergey RUIN
3 //  Module : SALOME
4
5 #ifndef SALOMEDS_AttributeTableOfString_i_HeaderFile
6 #define SALOMEDS_AttributeTableOfString_i_HeaderFile
7
8 // IDL headers
9 #include <SALOMEconfig.h>
10 #include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
11
12 #include "SALOMEDS_GenericAttribute_i.hxx"
13 #include "SALOMEDSImpl_AttributeTableOfString.hxx"
14
15 class SALOMEDS_AttributeTableOfString_i: public virtual POA_SALOMEDS::AttributeTableOfString,
16   public virtual SALOMEDS_GenericAttribute_i {
17     
18 public:
19   
20   SALOMEDS_AttributeTableOfString_i(const Handle(SALOMEDSImpl_AttributeTableOfString)& theAttr, CORBA::ORB_ptr orb) 
21     :SALOMEDS_GenericAttribute_i(theAttr, orb) {}; 
22
23   ~SALOMEDS_AttributeTableOfString_i() {};
24
25   virtual void SetTitle(const char* theTitle);
26   virtual char* GetTitle();
27   virtual void SetRowTitle(CORBA::Long theIndex, const char* theTitle)
28     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
29   virtual void SetRowTitles(const SALOMEDS::StringSeq& theTitles)
30     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength);
31   virtual SALOMEDS::StringSeq* GetRowTitles();
32   virtual void SetColumnTitle(CORBA::Long theIndex, const char* theTitle)
33     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
34   virtual void SetColumnTitles(const SALOMEDS::StringSeq& theTitles)
35     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength);
36   virtual SALOMEDS::StringSeq* GetColumnTitles();
37
38   virtual void SetRowUnit(CORBA::Long theIndex, const char* theUnit)
39     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
40   virtual void SetRowUnits(const SALOMEDS::StringSeq& theUnits)
41     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength);
42   virtual SALOMEDS::StringSeq* GetRowUnits();
43
44   virtual CORBA::Long GetNbRows();
45   virtual CORBA::Long GetNbColumns();
46   virtual void AddRow(const SALOMEDS::StringSeq& theData)
47     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength);
48   virtual void SetRow(CORBA::Long theRow, const SALOMEDS::StringSeq& theData)
49     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength, SALOMEDS::AttributeTableOfString::IncorrectIndex);
50   virtual SALOMEDS::StringSeq* GetRow(CORBA::Long theRow)
51     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
52   virtual void AddColumn(const SALOMEDS::StringSeq& theData)
53     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength);
54   virtual void SetColumn(CORBA::Long theColumn, const SALOMEDS::StringSeq& theData)
55     throw (SALOMEDS::AttributeTableOfString::IncorrectArgumentLength, SALOMEDS::AttributeTableOfString::IncorrectIndex);
56   virtual SALOMEDS::StringSeq* GetColumn(CORBA::Long theColumn)
57     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
58   virtual void PutValue(const char* theValue, CORBA::Long theRow, CORBA::Long theColumn)
59     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
60   virtual CORBA::Boolean HasValue(CORBA::Long theRow, CORBA::Long theColumn);
61   virtual char* GetValue(CORBA::Long theRow, CORBA::Long theColumn)
62     throw (SALOMEDS::AttributeTableOfString::IncorrectIndex);
63
64   virtual SALOMEDS::LongSeq* GetRowSetIndices(CORBA::Long theRow);
65   virtual void SetNbColumns(CORBA::Long theNbColumns);
66
67   virtual bool ReadFromFile(const SALOMEDS::TMPFile& theStream);
68   virtual SALOMEDS::TMPFile* SaveToFile();
69
70 };
71
72 #endif