Guest User

Untitled

a guest
Oct 15th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.95 KB | None | 0 0
  1. //
  2. // Basic_Types.hpp
  3. //
  4. // Required by Random.hpp
  5.  
  6. #ifndef __TOOLS_BASIC_TYPES__
  7. #define __TOOLS_BASIC_TYPES__
  8.  
  9.  
  10. // ============================================================================ Includes
  11. // Includes
  12. // ---------------------------------------------------------------------------- STL
  13. #include <vector>
  14. #include <stack>
  15. #include <set>
  16.  
  17.  
  18.  
  19. // ============================================================================ Typedefs
  20. // Typedefs
  21. // ---------------------------------------------------------------------------- Numeric Vectors
  22. typedef std::vector< int > Int_Vector;
  23. typedef std::vector< int8_t > Int8_Vector;
  24. typedef std::vector< int16_t > Int16_Vector;
  25. typedef std::vector< int32_t > Int32_Vector;
  26. typedef std::vector< int64_t > Int64_Vector;
  27.  
  28. typedef std::vector< unsigned > Uint_Vector;
  29. typedef std::vector< uint8_t > Uint8_Vector;
  30. typedef std::vector< uint16_t > Uint16_Vector;
  31. typedef std::vector< uint32_t > Uint32_Vector;
  32. typedef std::vector< uint64_t > Uint64_Vector;
  33.  
  34. typedef std::vector< float > Float_Vector;
  35. typedef std::vector< double > Double_Vector;
  36.  
  37. // ---------------------------------------------------------------------------- Numeric Stacks
  38. typedef std::stack< int > Int_Stack;
  39. typedef std::stack< int8_t > Int8_Stack;
  40. typedef std::stack< int16_t > Int16_Stack;
  41. typedef std::stack< int32_t > Int32_Stack;
  42. typedef std::stack< int64_t > Int64_Stack;
  43.  
  44. typedef std::stack< unsigned > Uint_Stack;
  45. typedef std::stack< uint8_t > Uint8_Stack;
  46. typedef std::stack< uint16_t > Uint16_Stack;
  47. typedef std::stack< uint32_t > Uint32_Stack;
  48. typedef std::stack< uint64_t > Uint64_Stack;
  49.  
  50. typedef std::stack< float > Float_Stack;
  51. typedef std::stack< double > Double_Stack;
  52.  
  53. // ---------------------------------------------------------------------------- Numeric Sets
  54. typedef std::set< int > Int_Set;
  55. typedef std::set< int8_t > Int8_Set;
  56. typedef std::set< int16_t > Int16_Set;
  57. typedef std::set< int32_t > Int32_Set;
  58. typedef std::set< int64_t > Int64_Set;
  59.  
  60. typedef std::set< unsigned > Uint_Set;
  61. typedef std::set< uint8_t > Uint8_Set;
  62. typedef std::set< uint16_t > Uint16_Set;
  63. typedef std::set< uint32_t > Uint32_Set;
  64. typedef std::set< uint64_t > Uint64_Set;
  65.  
  66. typedef std::set< float > Float_Set;
  67. typedef std::set< double > Double_Set;
  68.  
  69. // ---------------------------------------------------------------------------- Numeric Pairs
  70. typedef std::pair< int, int > Int_Pair;
  71. typedef std::pair< int8_t, int8_t > Int8_Pair;
  72. typedef std::pair< int16_t, int16_t > Int16_Pair;
  73. typedef std::pair< int32_t, int32_t > Int32_Pair;
  74. typedef std::pair< int64_t, int64_t > Int64_Pair;
  75.  
  76. typedef std::pair< unsigned, unsigned > Uint_Pair;
  77. typedef std::pair< uint8_t, uint8_t > Uint8_Pair;
  78. typedef std::pair< uint16_t, uint16_t > Uint16_Pair;
  79. typedef std::pair< uint32_t, uint32_t > Uint32_Pair;
  80. typedef std::pair< uint64_t, uint64_t > Uint64_Pair;
  81.  
  82. typedef std::pair< float, float > Float_Pair;
  83. typedef std::pair< double, double > Double_Pair;
  84.  
  85. // ---------------------------------------------------------------------------- Pair Vectors
  86. typedef std::vector< Int_Pair > Int_Pair_Vector;
  87. typedef std::vector< Int8_Pair > Int8_Pair_Vector;
  88. typedef std::vector< Int16_Pair > Int16_Pair_Vector;
  89. typedef std::vector< Int32_Pair > Int32_Pair_Vector;
  90. typedef std::vector< Int64_Pair > Int64_Pair_Vector;
  91.  
  92. typedef std::vector< Uint_Pair > Uint_Pair_Vector;
  93. typedef std::vector< Uint8_Pair > Uint8_Pair_Vector;
  94. typedef std::vector< Uint16_Pair > Uint16_Pair_Vector;
  95. typedef std::vector< Uint32_Pair > Uint32_Pair_Vector;
  96. typedef std::vector< Uint64_Pair > Uint64_Pair_Vector;
  97.  
  98. typedef std::vector< Float_Pair > Float_Pair_Vector;
  99. typedef std::vector< Double_Pair > Double_Pair_Vector;
  100.  
  101. // ---------------------------------------------------------------------------- Pair Stacks
  102. typedef std::stack< Int_Pair > Int_Pair_Stack;
  103. typedef std::stack< Int8_Pair > Int8_Pair_Stack;
  104. typedef std::stack< Int16_Pair > Int16_Pair_Stack;
  105. typedef std::stack< Int32_Pair > Int32_Pair_Stack;
  106. typedef std::stack< Int64_Pair > Int64_Pair_Stack;
  107.  
  108. typedef std::stack< Uint_Pair > Uint_Pair_Stack;
  109. typedef std::stack< Uint8_Pair > Uint8_Pair_Stack;
  110. typedef std::stack< Uint16_Pair > Uint16_Pair_Stack;
  111. typedef std::stack< Uint32_Pair > Uint32_Pair_Stack;
  112. typedef std::stack< Uint64_Pair > Uint64_Pair_Stack;
  113.  
  114. typedef std::stack< Float_Pair > Float_Pair_Stack;
  115. typedef std::stack< Double_Pair > Double_Pair_Stack;
  116.  
  117. // ---------------------------------------------------------------------------- Pair Sets
  118. typedef std::set< Int_Pair > Int_Pair_Set;
  119. typedef std::set< Int8_Pair > Int8_Pair_Set;
  120. typedef std::set< Int16_Pair > Int16_Pair_Set;
  121. typedef std::set< Int32_Pair > Int32_Pair_Set;
  122. typedef std::set< Int64_Pair > Int64_Pair_Set;
  123.  
  124. typedef std::set< Uint_Pair > Uint_Pair_Set;
  125. typedef std::set< Uint8_Pair > Uint8_Pair_Set;
  126. typedef std::set< Uint16_Pair > Uint16_Pair_Set;
  127. typedef std::set< Uint32_Pair > Uint32_Pair_Set;
  128. typedef std::set< Uint64_Pair > Uint64_Pair_Set;
  129.  
  130. typedef std::set< Float_Pair > Float_Pair_Set;
  131. typedef std::set< Double_Pair > Double_Pair_Set;
  132.  
  133. #endif
Add Comment
Please, Sign In to add comment