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