VideoTools
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
gslot.cpp
Go to the documentation of this file.
1
//
2
// Copyright (C) 2017 Graeme Walker
3
//
4
// This program is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// This program is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with this program. If not, see <http://www.gnu.org/licenses/>.
16
// ===
17
//
18
// gslot.cpp
19
//
20
21
#include "gdef.h"
22
#include "
gslot.h
"
23
24
G::Slot::SlotImpBase::~SlotImpBase
()
25
{
26
}
27
28
G::Slot::SlotImpBase::SlotImpBase
() : m_ref_count(1UL)
29
{
30
}
31
32
void
G::Slot::SlotImpBase::up
()
33
{
34
m_ref_count++ ;
35
}
36
37
void
G::Slot::SlotImpBase::down
()
38
{
39
m_ref_count-- ;
40
if
( m_ref_count == 0UL )
41
delete
this ;
42
}
43
44
// ===
45
46
void
G::Slot::SignalImp::check(
const
SlotImpBase
* p )
47
{
48
if
( p !=
nullptr
)
49
throw
AlreadyConnected() ;
50
}
51
52
/// \file gslot.cpp
G::Slot::SlotImpBase::SlotImpBase
SlotImpBase()
Default constuctor.
Definition:
gslot.cpp:28
gslot.h
G::Slot::SlotImpBase
Used as a base class to all slot implementation classes (such as G::Slot::SlotImp1), allowing them to be used as bodies to the associated slot reference-counting handle class (eg.
Definition:
gslot.h:108
G::Slot::SlotImpBase::up
void up()
Increments the reference count.
Definition:
gslot.cpp:32
G::Slot::SlotImpBase::~SlotImpBase
virtual ~SlotImpBase()
Destructor.
Definition:
gslot.cpp:24
G::Slot::SlotImpBase::down
void down()
Decrements the reference count and does "delete this" on zero.
Definition:
gslot.cpp:37
src
glib
gslot.cpp
Generated by
1.8.6