remove \r
[extl.git] / extl / container / bit_selector.h
blob2cc30f0c7297b0dec07a998341aeaea12d69ef50
1 /* ///////////////////////////////////////////////////////////////////////
2 * File: bit_selector.h
4 * Created: 08.12.07
5 * Updated: 08.12.07
7 * Brief: The bit selector
9 * [<Home>]
10 * Copyright (c) 2008-2020, Waruqi All rights reserved.
11 * //////////////////////////////////////////////////////////////////// */
13 #ifndef EXTL_CONTAINER_BIT_SELECTOR_H
14 #define EXTL_CONTAINER_BIT_SELECTOR_H
16 /*!\file bit_selector.h
17 * \brief The bit selector
19 #ifndef __cplusplus
20 # error bit_selector.h need be supported by c++.
21 #endif
23 /* ///////////////////////////////////////////////////////////////////////
24 * Includes
26 #include "bit_field.h"
27 #include "bit_array.h"
28 /* ///////////////////////////////////////////////////////////////////////
29 * ::extl namespace
31 EXTL_BEGIN_NAMESPACE
33 /*!\brief bit_selector class
35 * \param F The field type
37 * \ingroup extl_group_memory
39 template<typename_param_k F>
40 struct bit_selector
42 /// \name Types
43 /// @{
44 #ifdef EXTL_TEMPLATE_CLASS_DEFAULT_ARGUMENT_SUPPORT
45 typedef bit_array<F> array_type;
46 typedef bit_field<F> field_type;
47 #else
48 typedef bit_array < F
49 , typename_type_k buffer_selector<F>::buffer_type
50 > array_type;
51 typedef bit_field<F> field_type;
52 #endif /* EXTL_TEMPLATE_CLASS_DEFAULT_ARGUMENT_SUPPORT */
53 /// @}
56 /* ///////////////////////////////////////////////////////////////////////
57 * ::extl namespace
59 EXTL_END_NAMESPACE
61 /* //////////////////////////////////////////////////////////////////// */
62 #endif /* EXTL_CONTAINER_BIT_SELECTOR_H */
63 /* //////////////////////////////////////////////////////////////////// */