Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
Fireworks
Core
interface
FWModelChangeManager.h
Go to the documentation of this file.
1
#ifndef Fireworks_Core_FWModelChangeManager_h
2
#define Fireworks_Core_FWModelChangeManager_h
3
// -*- C++ -*-
4
//
5
// Package: Core
6
// Class : FWModelChangeManager
7
//
16
//
17
// Original Author: Chris Jones
18
// Created: Thu Jan 17 17:37:49 EST 2008
19
// $Id: FWModelChangeManager.h,v 1.6 2010/05/27 08:39:34 eulisse Exp $
20
//
21
22
// system include files
23
#include "sigc++/signal.h"
24
#include <set>
25
26
// user include files
27
#include "
Fireworks/Core/interface/FWModelId.h
"
28
#include "
Fireworks/Core/interface/FWModelChangeSignal.h
"
29
#include "
Fireworks/Core/interface/FWItemChangeSignal.h
"
30
31
// forward declarations
32
class
FWEventItem
;
33
34
class
FWModelChangeManager
35
{
36
37
public
:
38
FWModelChangeManager
();
39
virtual
~FWModelChangeManager
();
40
41
// ---------- const member functions ---------------------
42
43
// ---------- static member functions --------------------
44
45
// ---------- member functions ---------------------------
46
47
void
beginChanges
();
48
void
changed
(
const
FWModelId
&);
49
void
changed
(
const
FWEventItem
*);
50
void
endChanges
();
51
52
sigc::signal<void>
changeSignalsAreComing_
;
53
sigc::signal<void>
changeSignalsAreDone_
;
54
55
void
newItemSlot
(
FWEventItem
*);
56
void
itemsGoingToBeClearedSlot
(
void
);
57
58
private
:
59
FWModelChangeManager
(
const
FWModelChangeManager
&);
// stop default
60
61
const
FWModelChangeManager
&
operator=
(
const
FWModelChangeManager
&);
// stop default
62
63
// ---------- member data --------------------------------
64
unsigned
int
m_depth
;
65
std::vector<FWModelIds>
m_changes
;
66
std::set<const FWEventItem*>
m_itemChanges
;
67
std::vector<FWModelChangeSignal>
m_changeSignals
;
68
std::vector<FWItemChangeSignal>
m_itemChangeSignals
;
69
};
70
71
class
FWChangeSentry
{
72
public
:
73
FWChangeSentry
(
FWModelChangeManager
& iM) :
74
m_manager
(&iM)
75
{
76
m_manager
->
beginChanges
();
77
}
78
~FWChangeSentry
()
79
{
80
m_manager
->
endChanges
();
81
}
82
private
:
83
FWModelChangeManager
*
m_manager
;
84
};
85
86
#endif
FWModelChangeSignal.h
FWModelChangeManager::FWModelChangeManager
FWModelChangeManager()
Definition:
FWModelChangeManager.cc:36
FWModelChangeManager::m_changeSignals
std::vector< FWModelChangeSignal > m_changeSignals
Definition:
FWModelChangeManager.h:67
FWModelChangeManager::itemsGoingToBeClearedSlot
void itemsGoingToBeClearedSlot(void)
Definition:
FWModelChangeManager.cc:201
FWModelChangeManager::m_changes
std::vector< FWModelIds > m_changes
Definition:
FWModelChangeManager.h:65
FWModelId
Definition:
FWModelId.h:29
FWModelChangeManager::m_itemChanges
std::set< const FWEventItem * > m_itemChanges
Definition:
FWModelChangeManager.h:66
FWModelChangeManager::newItemSlot
void newItemSlot(FWEventItem *)
Definition:
FWModelChangeManager.cc:184
FWModelChangeManager::beginChanges
void beginChanges()
Definition:
FWModelChangeManager.cc:66
FWChangeSentry::~FWChangeSentry
~FWChangeSentry()
Definition:
FWModelChangeManager.h:78
FWModelId.h
FWModelChangeManager::m_depth
unsigned int m_depth
Definition:
FWModelChangeManager.h:64
FWChangeSentry::m_manager
FWModelChangeManager * m_manager
Definition:
FWModelChangeManager.h:83
FWEventItem
Definition:
FWEventItem.h:57
FWModelChangeManager::changeSignalsAreDone_
sigc::signal< void > changeSignalsAreDone_
Definition:
FWModelChangeManager.h:53
FWModelChangeManager::changed
void changed(const FWModelId &)
Definition:
FWModelChangeManager.cc:72
FWModelChangeManager::endChanges
void endChanges()
Definition:
FWModelChangeManager.cc:100
FWModelChangeManager
Definition:
FWModelChangeManager.h:34
FWModelChangeManager::m_itemChangeSignals
std::vector< FWItemChangeSignal > m_itemChangeSignals
Definition:
FWModelChangeManager.h:68
FWItemChangeSignal.h
FWModelChangeManager::changeSignalsAreComing_
sigc::signal< void > changeSignalsAreComing_
Definition:
FWModelChangeManager.h:52
FWModelChangeManager::~FWModelChangeManager
virtual ~FWModelChangeManager()
Definition:
FWModelChangeManager.cc:46
FWChangeSentry::FWChangeSentry
FWChangeSentry(FWModelChangeManager &iM)
Definition:
FWModelChangeManager.h:73
FWChangeSentry
Definition:
FWModelChangeManager.h:71
FWModelChangeManager::operator=
const FWModelChangeManager & operator=(const FWModelChangeManager &)
Generated for CMSSW Reference Manual by
1.8.5