Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.6 KiB

  1. /****************************** Module Header ******************************\
  2. * Module Name: soglobal.c
  3. *
  4. * Copyright (c) 1985-96, Microsoft Corporation
  5. *
  6. * 04/09/96 GerardoB Created
  7. \***************************************************************************/
  8. #include "structo.h"
  9. /*********************************************************************
  10. * Globals
  11. \***************************************************************************/
  12. char gszStructTag [] = "typedef struct";
  13. char gszPrecomph [] = "#include \"precomp.h\"\r\n#pragma hdrstop\r\n\r\n";
  14. char gszIncInput [] = "#include \"%s\"\r\n\r\n";
  15. char gszStructDef [] = "static STRUCTUREOFFSETSTABLE gsot";
  16. char gszStructDefFmt [] = "%s%s%s";
  17. char gszStructBegin [] = " [] = {\r\n";
  18. char gszStructEnd [] = ")}\r\n};\r\n\r\n";
  19. char gszStructFieldOffsetFmt [] = " {\"%s\", FIELD_OFFSET(%s, %s)},\r\n";
  20. char gszStructAbsoluteOffsetFmt [] = " {\"%s\", %#lx},\r\n";
  21. char gszStructLastRecord [] = " {NULL, sizeof(";
  22. /*
  23. * Setting the high order bit signals an offset relative to the
  24. * previous field offset.
  25. */
  26. char gszStructRelativeOffsetFmt [] = " {\"%s\", 0x80000000 + sizeof(%s)},\r\n";
  27. char gszStructArrayRelativeOffsetFmt [] = " {\"%s\", 0x80000000 + (sizeof(%s) * %s)},\r\n";
  28. char gszTableDef [] = "STRUCTURESTABLE gst [] = {\r\n";
  29. char gszTableEntryFmt [] = " {\"%s\", sizeof(%s), gsot%s},\r\n";
  30. char gszTableEnd [] = " {NULL, 0, NULL}\r\n};\r\n\r\n";
  31. #define SOSL(ps) {sizeof(ps) - 1, ps, 0}
  32. STRUCTLIST gpslEmbeddedStructs [] = {
  33. SOSL("OEMINFO"),
  34. SOSL("POINT"),
  35. SOSL("RECT"),
  36. {0, NULL, 0}
  37. };