Salome HOME
This commit was generated by cvs2git to track changes on a CVS vendor
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_StudyPropertiesAttribute.hxx
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_StudyPropertiesAttribute.hxx
8 //  Author : Yves FRICAUD
9 //  Module : SALOME
10 //  $Header$
11
12 #ifndef _SALOMEDS_StudyPropertiesAttribute_HeaderFile
13 #define _SALOMEDS_StudyPropertiesAttribute_HeaderFile
14
15 #ifndef _Standard_HeaderFile
16 #include <Standard.hxx>
17 #endif
18 #ifndef _Handle_SALOMEDS_StudyPropertiesAttribute_HeaderFile
19 #include <Handle_SALOMEDS_StudyPropertiesAttribute.hxx>
20 #endif
21
22 #ifndef _Handle_TColStd_HSequenceOfExtendedString_HeaderFile
23 #include <Handle_TColStd_HSequenceOfExtendedString.hxx>
24 #endif
25 #ifndef _Handle_TColStd_HSequenceOfInteger_HeaderFile
26 #include <Handle_TColStd_HSequenceOfInteger.hxx>
27 #endif
28 #ifndef _Standard_Integer_HeaderFile
29 #include <Standard_Integer.hxx>
30 #endif
31 #ifndef _Standard_Boolean_HeaderFile
32 #include <Standard_Boolean.hxx>
33 #endif
34 #ifndef _TDF_Attribute_HeaderFile
35 #include <TDF_Attribute.hxx>
36 #endif
37 #ifndef _Handle_TDF_Attribute_HeaderFile
38 #include <Handle_TDF_Attribute.hxx>
39 #endif
40 #ifndef _Handle_TDF_RelocationTable_HeaderFile
41 #include <Handle_TDF_RelocationTable.hxx>
42 #endif
43 class TColStd_HSequenceOfExtendedString;
44 class TColStd_HSequenceOfInteger;
45 class Standard_GUID;
46 class TDF_Label;
47 class TCollection_ExtendedString;
48 class TDF_Attribute;
49 class TDF_RelocationTable;
50
51
52 class SALOMEDS_StudyPropertiesAttribute : public TDF_Attribute {
53
54 public:
55
56     inline void* operator new(size_t,void* anAddress) 
57       {
58         return anAddress;
59       }
60     inline void* operator new(size_t size) 
61       { 
62         return Standard::Allocate(size); 
63       }
64     inline void  operator delete(void *anAddress) 
65       { 
66         if (anAddress) Standard::Free((Standard_Address&)anAddress); 
67       }
68 //    inline void  operator delete(void *anAddress, size_t size) 
69 //      { 
70 //        if (anAddress) Standard::Free((Standard_Address&)anAddress,size); 
71 //      }
72  // Methods PUBLIC
73  // 
74 Standard_EXPORT static const Standard_GUID& GetID() ;
75 Standard_EXPORT static  Handle_SALOMEDS_StudyPropertiesAttribute Set(const TDF_Label& label) ;
76 Standard_EXPORT SALOMEDS_StudyPropertiesAttribute();
77 Standard_EXPORT   void Init() ;
78 Standard_EXPORT   void SetUserName(const TCollection_ExtendedString& theName) ;
79 Standard_EXPORT   void SetFirstName(const TCollection_ExtendedString& theName) ;
80 Standard_EXPORT   TCollection_ExtendedString GetCreatorName() const;
81 Standard_EXPORT   Handle_TColStd_HSequenceOfExtendedString GetUserNames() const;
82 Standard_EXPORT   void SetModificationDate(const Standard_Integer theMinute,const Standard_Integer theHour,const Standard_Integer theDay,const Standard_Integer theMonth,const Standard_Integer theYear) ;
83 Standard_EXPORT   Standard_Boolean GetCreationDate(Standard_Integer& theMinute,Standard_Integer& theHour,Standard_Integer& theDay,Standard_Integer& theMonth,Standard_Integer& theYear) const;
84 Standard_EXPORT   void GetModificationDates(Handle(TColStd_HSequenceOfInteger)& theMinutes,Handle(TColStd_HSequenceOfInteger)& theHours,Handle(TColStd_HSequenceOfInteger)& theDays,Handle(TColStd_HSequenceOfInteger)& theMonths,Handle(TColStd_HSequenceOfInteger)& theYears) const;
85 Standard_EXPORT   void SetCreationMode(const Standard_Integer theMode) ;
86 Standard_EXPORT   Standard_Integer GetCreationMode() const;
87 Standard_EXPORT   void SetModified(const Standard_Integer theModified) ;
88 Standard_EXPORT   Standard_Boolean IsModified() const;
89 Standard_EXPORT   Standard_Integer GetModified() const;
90 Standard_EXPORT   void SetLocked(const Standard_Boolean theLocked) ;
91 Standard_EXPORT   Standard_Boolean IsLocked() const;
92 Standard_EXPORT   Standard_Boolean IsLockChanged(const Standard_Boolean theErase) ;
93 Standard_EXPORT  const Standard_GUID& ID() const;
94 Standard_EXPORT   void Restore(const Handle(TDF_Attribute)& with) ;
95 Standard_EXPORT   Handle_TDF_Attribute NewEmpty() const;
96 Standard_EXPORT   void Paste(const Handle(TDF_Attribute)& into,const Handle(TDF_RelocationTable)& RT) const;
97 Standard_EXPORT ~SALOMEDS_StudyPropertiesAttribute();
98
99
100
101
102  // Type management
103  //
104  Standard_EXPORT friend Handle_Standard_Type& SALOMEDS_StudyPropertiesAttribute_Type_();
105  Standard_EXPORT const Handle(Standard_Type)& DynamicType() const;
106  Standard_EXPORT Standard_Boolean              IsKind(const Handle(Standard_Type)&) const;
107
108 protected:
109
110  // Methods PROTECTED
111  // 
112
113
114  // Fields PROTECTED
115  //
116
117
118 private: 
119
120  // Methods PRIVATE
121  // 
122
123
124  // Fields PRIVATE
125  //
126 Handle_TColStd_HSequenceOfExtendedString myUserName;
127 Handle_TColStd_HSequenceOfInteger myMinute;
128 Handle_TColStd_HSequenceOfInteger myHour;
129 Handle_TColStd_HSequenceOfInteger myDay;
130 Handle_TColStd_HSequenceOfInteger myMonth;
131 Handle_TColStd_HSequenceOfInteger myYear;
132 Standard_Integer myMode;
133 Standard_Integer myModified;
134 Standard_Boolean myLocked;
135 Standard_Boolean myLockChanged;
136
137
138 };
139
140
141
142
143
144 // other inline functions and methods (like "C++: function call" methods)
145 //
146
147
148 #endif