y_groups__include.inc 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. #if defined _inc_y_groups__include
  2. #undef _inc_y_groups__include
  3. #endif
  4. #include "y_groups_setup"
  5. // This file is included directly from any YSI library that wants to use groups,
  6. // but groups are only enabled if the end-user explicitly includes y_groups.
  7. // Thus we try include this file many many times and eventually (hopefully) get
  8. // the functions.
  9. #if !defined _Y_GROUPS_USER_REQUESTED
  10. #endinput
  11. #endif
  12. #if defined Y_COMMANDS_GROUP_NAME
  13. #define MASTER 51
  14. #define YSIM_U_DISABLE
  15. #include "..\..\YSI_Core\y_master"
  16. #define _GROUP_MAKE_LIMIT Y_COMMANDS_GROUP_LIMIT
  17. #define _GROUP_MAKE_NAME Y_COMMANDS_GROUP_NAME
  18. #define _GROUP_MAKE_TAG Y_COMMANDS_GROUP_TAG
  19. #include "y_groups__funcs"
  20. #undef Y_COMMANDS_GROUP_LIMIT
  21. #undef Y_COMMANDS_GROUP_NAME
  22. #undef Y_COMMANDS_GROUP_TAG
  23. #include "..\..\YSI_Core\y_master"
  24. #endif
  25. #if defined Y_AREAS_GROUP_NAME
  26. #define MASTER 50
  27. #define YSIM_U_DISABLE
  28. #include "..\..\YSI_Core\y_master"
  29. #define _GROUP_MAKE_LIMIT Y_AREAS_GROUP_LIMIT
  30. #define _GROUP_MAKE_NAME Y_AREAS_GROUP_NAME
  31. #define _GROUP_MAKE_TAG Y_AREAS_GROUP_TAG
  32. #include "y_groups__funcs"
  33. #undef Y_AREAS_GROUP_LIMIT
  34. #undef Y_AREAS_GROUP_NAME
  35. #undef Y_AREAS_GROUP_TAG
  36. #include "..\..\YSI_Core\y_master"
  37. #endif
  38. #if defined Y_CLASSES_GROUP_NAME
  39. #define MASTER 61
  40. #define YSIM_U_DISABLE
  41. #include "..\..\YSI_Core\y_master"
  42. #define _GROUP_MAKE_LIMIT Y_CLASSES_GROUP_LIMIT
  43. #define _GROUP_MAKE_NAME Y_CLASSES_GROUP_NAME
  44. #define _GROUP_MAKE_TAG Y_CLASSES_GROUP_TAG
  45. #include "y_groups__funcs"
  46. #undef Y_CLASSES_GROUP_LIMIT
  47. #undef Y_CLASSES_GROUP_NAME
  48. #undef Y_CLASSES_GROUP_TAG
  49. #include "..\..\YSI_Core\y_master"
  50. #endif
  51. #if defined Y_RACES_GROUP_NAME
  52. #define MASTER 53
  53. #define YSIM_U_DISABLE
  54. #include "..\..\YSI_Core\y_master"
  55. #define _GROUP_MAKE_LIMIT Y_RACES_GROUP_LIMIT
  56. #define _GROUP_MAKE_NAME Y_RACES_GROUP_NAME
  57. #define _GROUP_MAKE_TAG Y_RACES_GROUP_TAG
  58. #include "y_groups__funcs"
  59. #undef Y_RACES_GROUP_LIMIT
  60. #undef Y_RACES_GROUP_NAME
  61. #undef Y_RACES_GROUP_TAG
  62. #include "..\..\YSI_Core\y_master"
  63. #endif
  64. #if defined Y_GTEST_GROUP_NAME
  65. #define MASTER 60
  66. #include "..\..\YSI_Core\y_master"
  67. #define _GROUP_MAKE_LIMIT Y_GTEST_GROUP_LIMIT
  68. #define _GROUP_MAKE_NAME Y_GTEST_GROUP_NAME
  69. #define _GROUP_MAKE_TAG Y_GTEST_GROUP_TAG
  70. #include "y_groups__funcs"
  71. #undef Y_GTEST_GROUP_LIMIT
  72. #undef Y_GTEST_GROUP_NAME
  73. #undef Y_GTEST_GROUP_TAG
  74. #include "..\..\YSI_Core\y_master"
  75. #endif
  76. //#if defined Y_TIMERS_GROUP_NAME
  77. // #define _GROUP_MAKE_LIMIT Y_TIMERS_GROUP_LIMIT
  78. // #define _GROUP_MAKE_NAME Y_TIMERS_GROUP_NAME
  79. // #define _GROUP_MAKE_TAG Y_TIMERS_GROUP_TAG
  80. // #include "y_groups__funcs"
  81. // #undef Y_TIMERS_GROUP_LIMIT
  82. // #undef Y_TIMERS_GROUP_NAME
  83. // #undef Y_TIMERS_GROUP_TAG
  84. //#endif
  85. //
  86. //#if defined Y_PROPERTIES_GROUP_NAME
  87. // #define _GROUP_MAKE_LIMIT Y_PROPERTIES_GROUP_LIMIT
  88. // #define _GROUP_MAKE_NAME Y_PROPERTIES_GROUP_NAME
  89. // #define _GROUP_MAKE_TAG Y_PROPERTIES_GROUP_TAG
  90. // #include "y_groups__funcs"
  91. // #undef Y_PROPERTIES_GROUP_LIMIT
  92. // #undef Y_PROPERTIES_GROUP_NAME
  93. // #undef Y_PROPERTIES_GROUP_TAG
  94. //#endif
  95. //
  96. //#if defined Y_DOBJ_GROUP_NAME
  97. // #define _GROUP_MAKE_LIMIT Y_DOBJ_GROUP_LIMIT
  98. // #define _GROUP_MAKE_NAME Y_DOBJ_GROUP_NAME
  99. // #define _GROUP_MAKE_TAG Y_DOBJ_GROUP_TAG
  100. // #include "y_groups__funcs"
  101. // #undef Y_DOBJ_GROUP_LIMIT
  102. // #undef Y_DOBJ_GROUP_NAME
  103. // #undef Y_DOBJ_GROUP_TAG
  104. //#endif
  105. //
  106. //#if defined Y_DAREA_GROUP_NAME
  107. // #define _GROUP_MAKE_LIMIT Y_DAREA_GROUP_LIMIT
  108. // #define _GROUP_MAKE_NAME Y_DAREA_GROUP_NAME
  109. // #define _GROUP_MAKE_TAG Y_DAREA_GROUP_TAG
  110. // #include "y_groups__funcs"
  111. // #undef Y_DAREA_GROUP_LIMIT
  112. // #undef Y_DAREA_GROUP_NAME
  113. // #undef Y_DAREA_GROUP_TAG
  114. //#endif
  115. //
  116. //#if defined Y_DCHECK_GROUP_NAME
  117. // #define _GROUP_MAKE_LIMIT Y_DCHECK_GROUP_LIMIT
  118. // #define _GROUP_MAKE_NAME Y_DCHECK_GROUP_NAME
  119. // #define _GROUP_MAKE_TAG Y_DCHECK_GROUP_TAG
  120. // #include "y_groups__funcs"
  121. // #undef Y_DCHECK_GROUP_LIMIT
  122. // #undef Y_DCHECK_GROUP_NAME
  123. // #undef Y_DCHECK_GROUP_TAG
  124. //#endif
  125. //
  126. //#if defined Y_DRACECP_GROUP_NAME
  127. // #define _GROUP_MAKE_LIMIT Y_DRACECP_GROUP_LIMIT
  128. // #define _GROUP_MAKE_NAME Y_DRACECP_GROUP_NAME
  129. // #define _GROUP_MAKE_TAG Y_DRACECP_GROUP_TAG
  130. // #include "y_groups__funcs"
  131. // #undef Y_DRACECP_GROUP_LIMIT
  132. // #undef Y_DRACECP_GROUP_NAME
  133. // #undef Y_DRACECP_GROUP_TAG
  134. //#endif
  135. //
  136. //#if defined Y_DMAPICON_GROUP_NAME
  137. // #define _GROUP_MAKE_LIMIT Y_DMAPICON_GROUP_LIMIT
  138. // #define _GROUP_MAKE_NAME Y_DMAPICON_GROUP_NAME
  139. // #define _GROUP_MAKE_TAG Y_DMAPICON_GROUP_TAG
  140. // #include "y_groups__funcs"
  141. // #undef Y_DMAPICON_GROUP_LIMIT
  142. // #undef Y_DMAPICON_GROUP_NAME
  143. // #undef Y_DMAPICON_GROUP_TAG
  144. //#endif
  145. #if defined GROUP_LIBRARY_NAME
  146. #if defined GROUP_LIBRARY_SIZE
  147. // Include the generic group code for this new custom group.
  148. // User-inclusion.
  149. #define _GROUP_MAKE_LIMIT GROUP_LIBRARY_SIZE
  150. #define _GROUP_MAKE_NAME GROUP_LIBRARY_NAME
  151. #if defined GROUP_LIBRARY_TAGS
  152. #define _GROUP_MAKE_TAG GROUP_LIBRARY_TAGS
  153. #else
  154. #define _GROUP_MAKE_TAG _
  155. #endif
  156. #include "y_groups__funcs"
  157. // Now remove the defines.
  158. #if defined GROUP_LIBRARY_TAGS
  159. #undef GROUP_LIBRARY_TAGS
  160. #endif
  161. #undef GROUP_LIBRARY_NAME
  162. #undef GROUP_LIBRARY_SIZE
  163. #else
  164. #error You must define both GROUP_LIBRARY_SIZE and GROUP_LIBRARY_NAME.
  165. #endif
  166. #else
  167. #if defined GROUP_LIBRARY_SIZE
  168. #error You must define both GROUP_LIBRARY_SIZE and GROUP_LIBRARY_NAME.
  169. #endif
  170. #endif