2
2
* Copyright (c) <2002-2004> <Jean-Philippe Barrette-LaPierre>
4
4
* Permission is hereby granted, free of charge, to any person obtaining
5
* a copy of this software and associated documentation files
6
* (cURLpp), to deal in the Software without restriction,
5
* a copy of this software and associated documentation files
6
* (cURLpp), to deal in the Software without restriction,
7
7
* including without limitation the rights to use, copy, modify, merge,
8
8
* publish, distribute, sublicense, and/or sell copies of the Software,
9
* and to permit persons to whom the Software is furnished to do so,
9
* and to permit persons to whom the Software is furnished to do so,
10
10
* subject to the following conditions:
12
12
* The above copyright notice and this permission notice shall be included
13
13
* in all copies or substantial portions of the Software.
15
15
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16
16
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
17
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20
20
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21
21
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
42
42
static T& instance();
43
43
static void makeInstance();
44
44
static void terminate();
47
47
//protected to be sure that nobody may create one by himself.
51
51
static void destroySingleton();
54
54
typedef typename ThreadingModel< T * >::VolatileType InstanceType;
55
55
static InstanceType mInstance;