summaryrefslogtreecommitdiff
path: root/ace/adapter/ace/Malloc_T.h
blob: c5b6b745be26281e356392d1d8538884217565ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
// $Id$

#ifndef ACE_ADAPTER_MALLOC_T_H
#define ACE_ADAPTER_MALLOC_T_H
#include "ace/pre.h"

#include "../../Malloc_T.h"

template <class MALLOC>
class ACE_Allocator_Adapter_W : public ACE_Allocator_Adapter<MALLOC>
{
public:
  ACE_Allocator_Adapter_W (const wchar_t *pool_name = 0)
    : ACE_Allocator_Adapter<MALLOC> (ACE_TEXT_WCHAR_TO_CHAR (pool_name))
  {}

  ACE_Allocator_Adapter_W (const wchar_t *pool_name,
                           const wchar_t *lock_name,
                           MEMORY_POOL_OPTIONS options = 0)
    : ACE_Allocator_Adapter<MALLOC> (ACE_TEXT_WCHAR_TO_CHAR (pool_name),
                                     ACE_TEXT_WCHAR_TO_CHAR (lock_name),
                                     options)
  {}

  virtual ~ACE_Allocator_Adapter_W (void)
  {}
};


template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
class ACE_Malloc_T_W : public ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>
{
public:
  ACE_Malloc_T_W (const wchar_t *pool_name = 0)
    : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> (ACE_TEXT_WCHAR_TO_CHAR (pool_name))
  {}

  ACE_Malloc_T_W (const wchar_t *pool_name,
                  const wchar_t *lock_name,
                  const ACE_MEM_POOL_OPTIONS *options = 0)
    : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> (ACE_TEXT_WCHAR_TO_CHAR (pool_name),
                                                      ACE_TEXT_WCHAR_TO_CHAR (lock_name),
                                                      options);
  {}


#if !defined (ACE_HAS_TEMPLATE_TYPEDEFS)
  ACE_Malloc_T_W (const wchar_t *pool_name,
                  const wchar_t *lock_name,
                  const void *options = 0)
    : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> (ACE_TEXT_WCHAR_TO_CHAR (pool_name),
                                                      ACE_TEXT_WCHAR_TO_CHAR (lock_name),
                                                      options);
  {}
#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */

  ~ACE_Malloc_T_W (void)
  {}
};


template <ACE_MEM_POOL_1, class ACE_LOCK>
class ACE_Malloc_W : public ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK>
{
public:
  ACE_Malloc_W (const wchar_t *pool_name = 0)
    : ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> (ACE_TEXT_WCHAR_TO_CHAR (pool_name))
  {}

  ACE_Malloc_W (const wchar_t *pool_name,
                const wchar_t *lock_name,
                const ACE_MEM_POOL_OPTIONS *options = 0)
    : ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> (ACE_TEXT_WCHAR_TO_CHAR (pool_name),
                                             ACE_TEXT_WCHAR_TO_CHAR (lock_name),
                                             options)
  {}

#if !defined (ACE_HAS_TEMPLATE_TYPEDEFS)
  ACE_Malloc_W (const wchar_t *pool_name,
                const wchar_t *lock_name,
                const void *options = 0)
    : ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> (ACE_TEXT_WCHAR_TO_CHAR (pool_name),
                                             ACE_TEXT_WCHAR_TO_CHAR (lock_name),
                                             options)
  {}
#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
};

#include "ace/post.h"
#endif /* ACE_MALLOC_H */