#include <Iguana/Models/interface/IgNTupleModel.h>
Public Types | |
typedef std::string | Binding |
typedef std::vector< Binding > | Bindings |
enum | EventType { ModelChanged } |
typedef lat::Callback1 < IgNTupleModelEvent > | Listener |
Public Member Functions | |
void | add (IgNTupleRep *rep) |
void | bindings (const Bindings &binds) |
const Bindings & | bindings (void) const |
void | changed (void) |
void | clear (void) |
IgNTupleModel (IgState *state) | |
void | listen (EventType, const Listener &listener) |
void | remove (IgNTupleRep *rep) |
void | unlisten (EventType, const Listener &listener) |
Private Types | |
typedef std::vector< Listener > | Listeners |
typedef std::list< IgNTupleRep * > | Reps |
Private Attributes | |
Bindings | m_bindings |
Listeners | m_listeners |
Reps | m_reps |
IgState * | m_state |
Definition at line 25 of file IgNTupleModel.h.
typedef std::string IgNTupleModel::Binding |
Definition at line 46 of file IgNTupleModel.h.
typedef std::vector<Binding> IgNTupleModel::Bindings |
Definition at line 47 of file IgNTupleModel.h.
Definition at line 28 of file IgNTupleModel.h.
typedef std::vector<Listener> IgNTupleModel::Listeners [private] |
Definition at line 52 of file IgNTupleModel.h.
typedef std::list<IgNTupleRep *> IgNTupleModel::Reps [private] |
Definition at line 53 of file IgNTupleModel.h.
IgNTupleModel::IgNTupleModel | ( | IgState * | state | ) |
void IgNTupleModel::add | ( | IgNTupleRep * | rep | ) |
Definition at line 26 of file IgNTupleModel.cc.
References m_reps.
00027 { 00028 m_reps.push_back (rep); 00029 }
Definition at line 67 of file IgNTupleModel.cc.
References i, and m_bindings.
00068 { 00069 m_bindings.clear (); 00070 m_bindings.resize (binds.size ()); 00071 00072 for (unsigned int i = 0; 00073 i != binds.size (); 00074 i++) 00075 { 00076 m_bindings[i] = binds[i]; 00077 } 00078 00079 }
const IgNTupleModel::Bindings & IgNTupleModel::bindings | ( | void | ) | const |
Definition at line 82 of file IgNTupleModel.cc.
References m_bindings.
00083 { 00084 return m_bindings; 00085 }
Definition at line 44 of file IgNTupleModel.cc.
References event(), and m_listeners.
00045 { 00046 IgNTupleModelEvent event (this); 00047 for (Listeners::iterator pos = m_listeners.begin (); 00048 pos != m_listeners.end (); ++pos) 00049 (*pos) (event); 00050 }
Definition at line 38 of file IgNTupleModel.cc.
References m_reps.
00039 { 00040 m_reps.clear (); 00041 }
Definition at line 53 of file IgNTupleModel.cc.
References m_listeners.
00054 { m_listeners.push_back (listener); }
void IgNTupleModel::remove | ( | IgNTupleRep * | rep | ) |
Definition at line 32 of file IgNTupleModel.cc.
References m_reps.
00033 { 00034 m_reps.remove (rep); 00035 }
Definition at line 57 of file IgNTupleModel.cc.
References ASSERT, find(), and m_listeners.
00058 { 00059 Listeners::iterator pos = std::find (m_listeners.begin (), 00060 m_listeners.end(), 00061 listener); 00062 ASSERT (pos != m_listeners.end ()); 00063 m_listeners.erase (pos); 00064 }
Bindings IgNTupleModel::m_bindings [private] |
Listeners IgNTupleModel::m_listeners [private] |
Reps IgNTupleModel::m_reps [private] |
IgState* IgNTupleModel::m_state [private] |
Definition at line 55 of file IgNTupleModel.h.