Version: 8.3.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
SUIT_DataOwner.h
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2
//
3
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5
//
6
// This library is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 2.1 of the License, or (at your option) any later version.
10
//
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// Lesser General Public License for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
//
20
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
//
22
23
#ifndef SUIT_DATAOWNER_H
24
#define SUIT_DATAOWNER_H
25
26
#include "
SUIT_SmartPtr.h
"
27
28
#include <QMap>
29
#include <QList>
30
#include <QString>
31
32
#ifdef WIN32
33
#pragma warning( disable:4251 )
34
#pragma warning( disable:4275 )
35
#endif
36
43
class
SUIT_EXPORT
SUIT_DataOwner
:
public
RefCount
44
{
45
public
:
46
SUIT_DataOwner
();
47
virtual
~
SUIT_DataOwner
();
48
virtual
QString keyString()
const
= 0;
49
};
50
54
typedef
SMART
(
SUIT_DataOwner
)
SUIT_DataOwnerPtr
;
55
57
bool
operator==(
const
SUIT_DataOwnerPtr&,
const
SUIT_DataOwnerPtr& );
58
66
class
SUIT_EXPORT
SUIT_DataOwnerPtrList
: public
QList
<SUIT_DataOwnerPtr>
67
{
68
public
:
69
SUIT_DataOwnerPtrList
();
70
SUIT_DataOwnerPtrList
(
const
bool
skipAllEqual );
71
SUIT_DataOwnerPtrList
(
const
SUIT_DataOwnerPtrList
& l );
72
SUIT_DataOwnerPtrList
(
const
SUIT_DataOwnerPtrList
& l,
const
bool
skipAllEqual );
73
74
void
append (
const
SUIT_DataOwnerPtr& x );
75
void
clear ();
76
uint
remove
(
const
SUIT_DataOwnerPtr& x );
77
78
private
:
79
// hide this methods: only append() should be used to add items to the list
80
iterator prepend(
const
SUIT_DataOwnerPtr& x );
81
iterator insert ( iterator it,
const
SUIT_DataOwnerPtr& x );
82
void
push_front (
const
SUIT_DataOwnerPtr& x );
83
void
push_back (
const
SUIT_DataOwnerPtr& x );
84
85
private
:
86
QMap<SUIT_DataOwnerPtr, int>
myMap
;
87
bool
mySkipEqual
;
88
};
89
90
#ifdef WIN32
91
#pragma warning( default:4251 )
92
#pragma warning( default:4275 )
93
#endif
94
95
#endif
src
SUIT
SUIT_DataOwner.h
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS