Salome HOME
Merge from branch CCRT_Port_V220.
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_GenericAttribute_i.cxx
1 //  SALOME SALOMEDS : data structure of SALOME and sources of Salome data server 
2 //
3 //  Copyright (C) 2003  CEA/DEN, EDF R&D
4 //
5 //
6 //
7 //  File   : SALOMEDS_GenericAttribute_i.cxx
8 //  Author : Mikhail PONIKAROV
9 //  Module : SALOME
10 //  $Header$
11
12 #include "SALOMEDS_GenericAttribute_i.hxx"
13 #include "SALOMEDS_SObject_i.hxx"
14 #include "SALOMEDS_Study_i.hxx"
15 #include "SALOMEDS.hxx"
16
17 using namespace std;
18
19
20 SALOMEDS_GenericAttribute_i::SALOMEDS_GenericAttribute_i(const Handle(TDF_Attribute)& theAttr,
21                                                          SALOMEDS_SObject_i* theSObject):
22   _myBasicAttr(theAttr),
23   _mySObject(theSObject)
24 {
25 }
26
27
28 SALOMEDS_GenericAttribute_i::~SALOMEDS_GenericAttribute_i()
29 {
30 }
31
32
33 char* SALOMEDS_GenericAttribute_i::Store()
34 {
35   return CORBA::string_dup("");
36 }
37
38
39 void SALOMEDS_GenericAttribute_i::Restore(const char*)
40 {
41 }
42
43
44 char* SALOMEDS_GenericAttribute_i::Type() 
45 {
46   SALOMEDS::Locker lock;
47
48   return CORBA::string_dup(SALOMEDS::GetType(_myBasicAttr).c_str());
49 }
50
51
52 SALOMEDS::SObject_ptr SALOMEDS_GenericAttribute_i::GetSObject()
53 {
54   SALOMEDS::Locker lock;
55
56   return _mySObject->_this();
57 }
58
59
60 void SALOMEDS_GenericAttribute_i::CheckLocked() 
61   throw (SALOMEDS::GenericAttribute::LockProtection) 
62 {
63   SALOMEDS::Locker lock;
64
65   _mySObject->GetStudyServant()->CheckLocked();
66 }