eclinclude4.hpp 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*##############################################################################
  2. HPCC SYSTEMS software Copyright (C) 2012 HPCC Systems.
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. ############################################################################## */
  13. #ifndef eclinclude4_incl
  14. #define eclinclude4_incl
  15. // Gather all the includes used by generated code into a single file so that we can
  16. // take advantage of precompiled headers more easily
  17. #ifdef _WIN32
  18. #define ECL_API __declspec(dllexport)
  19. #define LOCAL_API
  20. #define SERVICE_API __declspec(dllimport)
  21. #define RTL_API __declspec(dllimport)
  22. #define BCD_API __declspec(dllimport)
  23. #else
  24. #ifdef USE_VISIBILITY
  25. #define ECL_API __attribute__ ((visibility("default")))
  26. #define LOCAL_API __attribute__ ((visibility("hidden")))
  27. #else
  28. #define ECL_API
  29. #define LOCAL_API
  30. #endif
  31. #define SERVICE_API
  32. #define RTL_API
  33. #define BCD_API
  34. #endif
  35. #include <string.h>
  36. #include <malloc.h>
  37. #include <stdlib.h>
  38. #include <ctype.h>
  39. #include <math.h>
  40. #define CHEAP_UCHAR_DEF
  41. #if __WIN32
  42. typedef wchar_t UChar;
  43. #else //__WIN32
  44. typedef unsigned short UChar;
  45. #endif //__WIN32
  46. #ifdef _WIN32
  47. typedef unsigned int size32_t; // avoid pulling in platform.h (which pulls in windows.h etc) just for this...
  48. typedef unsigned __int64 hash64_t;
  49. #else
  50. #include "platform.h"
  51. #endif
  52. #include "eclrtl.hpp"
  53. #include "eclhelper.hpp"
  54. #include "rtlkey.hpp"
  55. #include "eclrtl_imp.hpp"
  56. #include "rtlfield_imp.hpp"
  57. #include "rtlds_imp.hpp"
  58. #include "eclhelper_base.hpp"
  59. #include "rtlbcd.hpp"
  60. #endif