1 /** 2 * Copyright (c) 2019, The Linux Foundation. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: 7 * * Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * * Redistributions in binary form must reproduce the above 10 * copyright notice, this list of conditions and the following 11 * disclaimer in the documentation and/or other materials provided 12 * with the distribution. 13 * * Neither the name of The Linux Foundation nor the names of its 14 * contributors may be used to endorse or promote products derived 15 * from this software without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 24 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 26 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 27 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 */ 29 30 #ifndef AEESTDDEF_H 31 #define AEESTDDEF_H 32 /* 33 ======================================================================= 34 35 FILE: AEEStdDef.h 36 37 DESCRIPTION: definition of basic types, constants, 38 preprocessor macros 39 40 ======================================================================= 41 */ 42 43 #include <stdint.h> 44 45 #if defined(COMDEF_H) /* guards against a known re-definer */ 46 #define _BOOLEAN_DEFINED 47 #define _UINT32_DEFINED 48 #define _UINT16_DEFINED 49 #define _UINT8_DEFINED 50 #define _INT32_DEFINED 51 #define _INT16_DEFINED 52 #define _INT8_DEFINED 53 #define _UINT64_DEFINED 54 #define _INT64_DEFINED 55 #define _BYTE_DEFINED 56 #endif /* #if !defined(COMDEF_H) */ 57 58 /* ----------------------------------------------------------------------- 59 ** Standard Types 60 ** ----------------------------------------------------------------------- */ 61 62 /* The following definitions are the same accross platforms. This first 63 ** group are the sanctioned types. 64 */ 65 #ifndef _BOOLEAN_DEFINED 66 typedef unsigned char boolean; /* Boolean value type. */ 67 #define _BOOLEAN_DEFINED 68 #endif 69 70 #ifndef _UINT32_DEFINED 71 typedef uint32_t uint32; /* Unsigned 32 bit value */ 72 #define _UINT32_DEFINED 73 #endif 74 75 #ifndef _UINT16_DEFINED 76 typedef unsigned short uint16; /* Unsigned 16 bit value */ 77 #define _UINT16_DEFINED 78 #endif 79 80 #ifndef _UINT8_DEFINED 81 typedef unsigned char uint8; /* Unsigned 8 bit value */ 82 #define _UINT8_DEFINED 83 #endif 84 85 #ifndef _INT32_DEFINED 86 typedef int32_t int32; /* Signed 32 bit value */ 87 #define _INT32_DEFINED 88 #endif 89 90 #ifndef _INT16_DEFINED 91 typedef signed short int16; /* Signed 16 bit value */ 92 #define _INT16_DEFINED 93 #endif 94 95 #ifndef _INT8_DEFINED 96 typedef signed char int8; /* Signed 8 bit value */ 97 #define _INT8_DEFINED 98 #endif 99 100 #if defined(__GNUC__) 101 #define __int64 long long 102 #endif 103 104 #ifndef _UINT64_DEFINED 105 typedef unsigned __int64 uint64; /* Unsigned 64 bit value */ 106 #define _UINT64_DEFINED 107 #endif 108 109 #ifndef _INT64_DEFINED 110 typedef __int64 int64; /* Signed 64 bit value */ 111 #define _INT64_DEFINED 112 #endif 113 114 #ifndef _BYTE_DEFINED 115 typedef unsigned char byte; /* byte type */ 116 #define _BYTE_DEFINED 117 #endif 118 119 120 #ifndef _AEEUID_DEFINED 121 typedef uint32 AEEUID; 122 #define _AEEUID_DEFINED 123 #endif 124 125 #ifndef _AEEIID_DEFINED 126 typedef uint32 AEEIID; 127 #define _AEEIID_DEFINED 128 #endif 129 130 #ifndef _AEECLSID_DEFINED 131 typedef uint32 AEECLSID; 132 #define _AEECLSID_DEFINED 133 #endif 134 135 #ifndef _AEEPRIVID_DEFINED 136 typedef uint32 AEEPRIVID; 137 #define _AEEPRIVID_DEFINED 138 #endif 139 140 #ifndef _AECHAR_DEFINED 141 typedef uint16 AECHAR; 142 #define _AECHAR_DEFINED 143 #endif 144 145 #ifndef _AEERESULT_DEFINED 146 typedef int AEEResult; 147 #define _AEERESULT_DEFINED 148 #endif 149 150 /* ----------------------------------------------------------------------- 151 ** Function Calling Conventions 152 ** ----------------------------------------------------------------------- */ 153 154 #ifndef CDECL 155 #ifdef _MSC_VER 156 #define CDECL __cdecl 157 #else 158 #define CDECL 159 #endif /* _MSC_VER */ 160 #endif /* CDECL */ 161 162 /* ----------------------------------------------------------------------- 163 ** Constants 164 ** ----------------------------------------------------------------------- */ 165 166 #ifndef TRUE 167 #define TRUE 1 /* Boolean true value. */ 168 #endif 169 170 #ifndef FALSE 171 #define FALSE 0 /* Boolean false value. */ 172 #endif 173 174 #ifndef NULL 175 #define NULL 0 176 #endif 177 178 #ifndef MIN_INT8 179 #define MIN_INT8 -128 180 #endif 181 #ifndef MIN_INT16 182 #define MIN_INT16 -32768 183 #endif 184 #ifndef MIN_INT32 185 #define MIN_INT32 (~0x7fffffff) /* -2147483648 is unsigned */ 186 #endif 187 #ifndef MIN_INT64 188 #define MIN_INT64 (~0x7fffffffffffffffLL) /* -9223372036854775808 is unsigned */ 189 #endif 190 191 #ifndef MAX_INT8 192 #define MAX_INT8 127 193 #endif 194 #ifndef MAX_INT16 195 #define MAX_INT16 32767 196 #endif 197 #ifndef MAX_INT32 198 #define MAX_INT32 2147483647 199 #endif 200 #ifndef MAX_INT64 201 #define MAX_INT64 9223372036854775807LL 202 #endif 203 204 #ifndef MAX_UINT8 205 #define MAX_UINT8 255 206 #endif 207 #ifndef MAX_UINT16 208 #define MAX_UINT16 65535 209 #endif 210 #ifndef MAX_UINT32 211 #define MAX_UINT32 4294967295u 212 #endif 213 #ifndef MAX_UINT64 214 #define MAX_UINT64 18446744073709551615uLL 215 #endif 216 217 #ifndef MIN_AECHAR 218 #define MIN_AECHAR 0 219 #endif 220 #ifndef MAX_AECHAR 221 #define MAX_AECHAR 65535 222 #endif 223 224 225 /* ----------------------------------------------------------------------- 226 ** Preprocessor helpers 227 ** ----------------------------------------------------------------------- */ 228 #define __STR__(x) #x 229 #define __TOSTR__(x) __STR__(x) 230 #define __FILE_LINE__ __FILE__ ":" __TOSTR__(__LINE__) 231 232 /* ----------------------------------------------------------------------- 233 ** Types for code generated from IDL 234 ** ----------------------------------------------------------------------- */ 235 236 #ifndef __QIDL_WCHAR_T_DEFINED__ 237 #define __QIDL_WCHAR_T_DEFINED__ 238 typedef uint16 _wchar_t; 239 #endif 240 241 /* __STRING_OBJECT__ will be deprecated in the future */ 242 #if !defined(__QIDL_STRING_OBJECT_DEFINED__) && !defined(__STRING_OBJECT__) 243 #define __QIDL_STRING_OBJECT_DEFINED__ 244 #define __STRING_OBJECT__ 245 typedef struct _cstring_s { 246 char* data; 247 int dataLen; 248 int dataLenReq; 249 } _cstring_t; 250 251 typedef struct _wstring_s { 252 _wchar_t* data; 253 int dataLen; 254 int dataLenReq; 255 } _wstring_t; 256 #endif /* __QIDL_STRING_OBJECT_DEFINED__ */ 257 258 /* 259 ======================================================================= 260 DATA STRUCTURES DOCUMENTATION 261 ======================================================================= 262 263 boolean 264 265 Description: 266 This type is used to express boolean values (TRUE or FALSE). 267 268 Definition: 269 typedef unsigned char boolean 270 271 See Also: 272 byte 273 int8 274 int16 275 int32 276 int64 277 uint32 278 uint16 279 uint8 280 uint64 281 282 ======================================================================= 283 284 uint32 285 286 Description: 287 This is a 32-bit unsigned integer. 288 289 Definition: 290 typedef uint32_t uint32 291 292 See Also: 293 boolean 294 byte 295 int8 296 int16 297 int32 298 int64 299 uint8 300 uint16 301 uint64 302 303 ======================================================================= 304 305 uint16 306 307 Description: 308 This is a 16-bit unsigned integer. 309 310 Definition: 311 typedef unsigned short uint16 312 313 See Also: 314 boolean 315 byte 316 int8 317 int16 318 int32 319 int64 320 uint8 321 uint32 322 uint64 323 324 ======================================================================= 325 326 uint8 327 328 Description: 329 This is an 8-bit unsigned integer. 330 331 Definition: 332 typedef unsigned char uint8 333 334 See Also: 335 boolean 336 byte 337 int8 338 int16 339 int32 340 int64 341 uint16 342 uint32 343 uint64 344 345 ======================================================================= 346 347 int32 348 349 Description: 350 This is a 32-bit signed integer. 351 352 Definition: 353 typedef int32_t int32 354 355 See Also: 356 boolean 357 byte 358 int8 359 int16 360 int64 361 uint8 362 uint16 363 uint32 364 uint64 365 366 ======================================================================= 367 368 int16 369 370 Description: 371 This is a 16-bit signed integer. 372 373 Definition: 374 typedef signed short int16 375 376 See Also: 377 boolean 378 byte 379 int8 380 int32 381 int64 382 uint8 383 uint16 384 uint32 385 uint64 386 387 ======================================================================= 388 389 int8 390 391 Description: 392 This is an 8-bit signed integer. 393 394 Definition: 395 typedef signed char int8 396 397 See Also: 398 boolean 399 byte 400 int16 401 int32 402 int64 403 uint8 404 uint16 405 uint32 406 uint64 407 408 ======================================================================= 409 410 uint64 411 412 Description: 413 This is a 64-bit unsigned integer. 414 415 Definition: 416 typedef unsigned __int64 uint64 417 418 See Also: 419 boolean 420 byte 421 int8 422 int16 423 int32 424 int64 425 uint8 426 uint16 427 uint32 428 429 ======================================================================= 430 431 int64 432 433 Description: 434 This is a 64-bit signed integer. 435 436 Definition: 437 typedef __int64 int64 438 439 See Also: 440 boolean 441 byte 442 int8 443 int16 444 int32 445 uint8 446 uint16 447 uint32 448 uint64 449 450 ======================================================================= 451 452 byte 453 454 Description: 455 This is a byte. 456 457 Definition: 458 typedef unsigned char byte 459 460 See Also: 461 boolean 462 int8 463 int16 464 int32 465 int64 466 uint8 467 uint16 468 uint32 469 uint64 470 471 ======================================================================= 472 473 AEEUID 474 475 Description: 476 This is a BREW unique ID. Used to express unique types, interfaces, classes 477 groups and privileges. The BREW ClassID Generator generates 478 unique IDs that can be used anywhere you need a new AEEIID, AEECLSID, 479 or AEEPRIVID. 480 481 Definition: 482 typedef uint32 AEEUID 483 484 See Also: 485 AECHAR 486 AEECLSID 487 AEEIID 488 AEEPRIVID 489 AEEResult 490 491 ======================================================================= 492 493 AEEIID 494 495 Description: 496 This is an interface ID type, used to denote a BREW interface. It is a special case 497 of AEEUID. 498 499 Definition: 500 typedef uint32 AEEIID 501 502 See Also: 503 AECHAR 504 AEECLSID 505 AEEPRIVID 506 AEEResult 507 AEEUID 508 509 ======================================================================= 510 511 AEECLSID 512 513 Description: 514 This is a classe ID type, used to denote a BREW class. It is a special case 515 of AEEUID. 516 517 Definition: 518 typedef uint32 AEECLSID 519 520 See Also: 521 AECHAR 522 AEECLSIDs 523 AEEIID 524 AEEPRIVID 525 AEEResult 526 AEEUID 527 528 ======================================================================= 529 530 AEEPRIVID 531 532 Description: 533 This is a privilege ID type, used to express a privilege. It is a special case 534 of AEEUID. 535 536 Definition: 537 typedef uint32 AEEPRIVID 538 539 See Also: 540 AECHAR 541 AEECLSID 542 AEEIID 543 AEEResult 544 AEEUID 545 546 ======================================================================= 547 548 AECHAR 549 550 Description: 551 This is a 16-bit character type. 552 553 Definition: 554 typedef uint16 AECHAR 555 556 See Also: 557 AEEPRIVID 558 AEECLSID 559 AEEIID 560 AEEResult 561 AEEUID 562 563 ======================================================================= 564 565 AEEResult 566 567 Description: 568 This is the standard result type. 569 570 Definition: 571 typedef int AEEResult 572 573 See Also: 574 AECHAR 575 AEEPRIVID 576 AEECLSID 577 AEEIID 578 AEEUID 579 580 ======================================================================= 581 582 _wchar_t 583 584 Description: 585 This is a 16-bit character type corresponding to the IDL 'wchar' 586 type. 587 588 Definition: 589 typedef uint16 _wchar_t 590 591 See Also: 592 _cstring_t 593 _wstring_t 594 595 ======================================================================= 596 597 _cstring_t 598 599 Description: 600 This structure is used to represent an IDL string when used inside a 601 sequence or union. 602 603 Definition: 604 typedef struct _cstring_s { 605 char* data; 606 int dataLen; 607 int dataLenReq; 608 } _cstring_t; 609 610 Members: 611 data : A pointer to the NULL-terminated string. 612 dataLen : The size, in chars, of the buffer pointed to by 'data', 613 including the NULL terminator. This member is only used 614 when the structure is part of an rout or inrout 615 parameter, but must be supplied by the caller as an 616 input in these cases. 617 dataLenReq : The size that would have been required to store the 618 entire result string. This member is only used when the 619 structure is part of an rout or inrout parameter, when 620 it is an output value set by the callee. The length of 621 the returned string (including the NULL terminator) 622 after a call is the minimum of dataLen and dataLenReq. 623 624 See Also: 625 _wchar_t 626 _wstring_t 627 628 ======================================================================= 629 630 _wstring_t 631 632 Description: 633 This structure is used to represent an IDL wstring when used inside a 634 sequence or union. 635 636 Definition: 637 typedef struct _wstring_s { 638 _wchar_t* data; 639 int dataLen; 640 int dataLenReq; 641 } _wstring_t; 642 643 Members: 644 data : A pointer to the NULL-terminated wide string. 645 dataLen : The size, in 16-bit characters, of the buffer pointed to 646 by 'data', including the NULL terminator. This member 647 is only used when the structure is part of an rout or 648 inrout parameter, but must be supplied by the caller as 649 an input in these cases. 650 dataLenReq : The number of 16-bit characters that would have been 651 required to store the entire result string. This member 652 is only used when the structure is part of an rout or 653 inrout parameter, when it is an output value set by the 654 callee. The length of the returned wstring (including 655 the NULL terminator) after a call is the minimum of 656 dataLen and dataLenReq. 657 658 See Also: 659 _cstring_t 660 _wchar_t 661 662 ======================================================================= 663 CONSTANTS DOCUMENTATION 664 ======================================================================= 665 666 TRUE 667 668 Description: 669 TRUE is the boolean "true." 670 671 Definition: 672 673 #define TRUE 1 674 675 See Also: 676 FALSE 677 NULL 678 679 ======================================================================= 680 681 FALSE 682 683 Description: 684 FALSE is the boolean "false." 685 686 Definition: 687 688 #define FALSE 0 689 690 See Also: 691 NULL 692 TRUE 693 694 ======================================================================= 695 696 NULL 697 698 Description: 699 NULL is the null value, usually used to test a pointer. 700 701 Definition: 702 703 #define NULL 0 704 705 See Also: 706 FALSE 707 TRUE 708 709 ======================================================================= 710 711 MIN_INT8 712 713 Description: 714 MIN_INT8 is the minimum signed 8-bit integer value. 715 716 Definition: 717 718 #define MIN_INT8 -128 719 720 See Also: 721 MAX_AECHAR 722 MAX_INT8 723 MAX_INT16 724 MAX_INT32 725 MAX_INT64 726 MAX_UINT8 727 MAX_UINT16 728 MAX_UINT32 729 MAX_UINT64 730 MIN_AECHAR 731 MIN_INT16 732 MIN_INT32 733 MIN_INT64 734 735 ======================================================================= 736 737 MIN_INT16 738 739 Description: 740 MIN_INT16 is the minimum signed 16-bit integer value 741 742 Definition: 743 744 #define MIN_INT16 -32768 745 746 See Also: 747 MAX_AECHAR 748 MAX_INT8 749 MAX_INT16 750 MAX_INT32 751 MAX_INT64 752 MAX_UINT8 753 MAX_UINT16 754 MAX_UINT32 755 MAX_UINT64 756 MIN_AECHAR 757 MIN_INT8 758 MIN_INT32 759 MIN_INT64 760 761 ======================================================================= 762 763 MIN_INT32 764 765 Description: 766 MIN_INT32 is the minimum signed 32-bit integer value. 767 768 Definition: 769 770 #define MIN_INT32 (~0x7fffffff) 771 772 Comments: 773 Brew MP uses (~0x7fffffff), because -2147483648 is treated as unsigned by compilers. 774 775 See Also: 776 MAX_AECHAR 777 MAX_INT8 778 MAX_INT16 779 MAX_INT32 780 MAX_INT64 781 MAX_UINT8 782 MAX_UINT16 783 MAX_UINT32 784 MAX_UINT64 785 MIN_AECHAR 786 MIN_INT8 787 MIN_INT16 788 MIN_INT64 789 790 ======================================================================= 791 792 MIN_INT64 793 794 Description: 795 MIN_INT64 is the minimum signed 64-bit integer value. 796 797 Definition: 798 799 #define MIN_INT64 (~0x7fffffffffffffffll) 800 801 Comments: 802 Brew MP uses (~0x7fffffffffffffffll), because -9223372036854775808 is 803 treated as unsigned by compilers. 804 805 See Also: 806 MAX_AECHAR 807 MAX_INT8 808 MAX_INT16 809 MAX_INT32 810 MAX_INT64 811 MAX_UINT8 812 MAX_UINT16 813 MAX_UINT32 814 MAX_UINT64 815 MIN_AECHAR 816 MIN_INT8 817 MIN_INT16 818 MIN_INT32 819 820 ======================================================================= 821 822 MAX_INT8 823 824 Description: 825 MAX_INT8 is the maximum signed 8-bit integer value 826 827 Definition: 828 829 #define MAX_INT8 127 830 831 See Also: 832 MAX_AECHAR 833 MAX_INT16 834 MAX_INT32 835 MAX_INT64 836 MAX_UINT8 837 MAX_UINT16 838 MAX_UINT32 839 MAX_UINT64 840 MIN_AECHAR 841 MIN_INT8 842 MIN_INT16 843 MIN_INT32 844 MIN_INT64 845 846 ======================================================================= 847 848 MAX_INT16 849 850 Description: 851 MAX_INT16 is the maximum signed 16-bit integer value. 852 853 Definition: 854 855 #define MAX_INT16 32767 856 857 See Also: 858 MAX_AECHAR 859 MAX_INT8 860 MAX_INT32 861 MAX_INT64 862 MAX_UINT8 863 MAX_UINT16 864 MAX_UINT32 865 MAX_UINT64 866 MIN_AECHAR 867 MIN_INT8 868 MIN_INT16 869 MIN_INT32 870 MIN_INT64 871 872 ======================================================================= 873 874 MAX_INT32 875 876 Description: 877 MAX_INT32 is the maximum signed 32-bit integer value. 878 879 Definition: 880 881 #define MAX_INT32 2147483647 882 883 See Also: 884 MAX_AECHAR 885 MAX_INT8 886 MAX_INT16 887 MAX_INT64 888 MAX_UINT8 889 MAX_UINT16 890 MAX_UINT32 891 MAX_UINT64 892 MIN_AECHAR 893 MIN_INT8 894 MIN_INT16 895 MIN_INT32 896 MIN_INT64 897 898 ======================================================================= 899 900 MAX_INT64 901 902 Description: 903 MAX_INT64 is the maximum signed 64-bit integer value. 904 905 Definition: 906 907 #define MAX_INT64 9223372036854775807ll 908 909 See Also: 910 MAX_AECHAR 911 MAX_INT8 912 MAX_INT16 913 MAX_INT32 914 MAX_UINT8 915 MAX_UINT16 916 MAX_UINT32 917 MAX_UINT64 918 MIN_AECHAR 919 MIN_INT8 920 MIN_INT16 921 MIN_INT32 922 MIN_INT64 923 924 ======================================================================= 925 926 MAX_UINT8 927 928 Description: 929 MAX_UINT8 is the maximum unsigned 8-bit integer value. 930 931 Definition: 932 933 #define MAX_UINT8 255 934 935 See Also: 936 MAX_AECHAR 937 MAX_INT8 938 MAX_INT16 939 MAX_INT32 940 MAX_INT64 941 MAX_UINT16 942 MAX_UINT32 943 MAX_UINT64 944 MIN_AECHAR 945 MIN_INT8 946 MIN_INT16 947 MIN_INT32 948 MIN_INT64 949 950 ======================================================================= 951 952 MAX_UINT16 953 954 Description: 955 MAX_UINT16 is the maximum unsigned 16-bit integer value. 956 957 Definition: 958 959 #define MAX_UINT16 65535 960 961 See Also: 962 MAX_AECHAR 963 MAX_INT8 964 MAX_INT16 965 MAX_INT32 966 MAX_INT64 967 MAX_UINT8 968 MAX_UINT32 969 MAX_UINT64 970 MIN_AECHAR 971 MIN_INT8 972 MIN_INT16 973 MIN_INT32 974 MIN_INT64 975 976 ======================================================================= 977 978 MAX_UINT32 979 980 Description: 981 MAX_UINT32 is the maximum unsigned 32-bit integer value. 982 983 Definition: 984 985 #define MAX_UINT32 4294967295u 986 987 See Also: 988 MAX_AECHAR 989 MAX_INT8 990 MAX_INT16 991 MAX_INT32 992 MAX_INT64 993 MAX_UINT8 994 MAX_UINT16 995 MAX_UINT64 996 MIN_AECHAR 997 MIN_INT8 998 MIN_INT16 999 MIN_INT32 1000 MIN_INT64 1001 1002 ======================================================================= 1003 1004 MAX_UINT64 1005 1006 Description: 1007 MAX_UINT64 is the maximum unsigned 64-bit integer value. 1008 1009 Definition: 1010 1011 #define MAX_UINT64 18446744073709551615ull 1012 1013 See Also: 1014 MAX_AECHAR 1015 MAX_INT8 1016 MAX_INT16 1017 MAX_INT32 1018 MAX_INT64 1019 MAX_UINT8 1020 MAX_UINT16 1021 MAX_UINT32 1022 MIN_AECHAR 1023 MIN_INT8 1024 MIN_INT16 1025 MIN_INT32 1026 MIN_INT64 1027 1028 ======================================================================= 1029 1030 MIN_AECHAR 1031 1032 Description: 1033 MIN_AECHAR is the minimum AECHAR value. 1034 1035 Definition: 1036 1037 #define MIN_AECHAR 0 1038 1039 See Also: 1040 MAX_AECHAR 1041 MAX_INT8 1042 MAX_INT16 1043 MAX_INT32 1044 MAX_INT64 1045 MAX_UINT8 1046 MAX_UINT16 1047 MAX_UINT32 1048 MAX_UINT64 1049 MIN_INT8 1050 MIN_INT16 1051 MIN_INT32 1052 MIN_INT64 1053 1054 ======================================================================= 1055 1056 MAX_AECHAR 1057 1058 Description: 1059 MAX_AECHAR is the maximum AECHAR value. 1060 1061 Definition: 1062 1063 #define MAX_AECHAR 65535 1064 1065 See Also: 1066 MIN_AECHAR 1067 MAX_INT8 1068 MAX_INT16 1069 MAX_INT32 1070 MAX_INT64 1071 MAX_UINT8 1072 MAX_UINT16 1073 MAX_UINT32 1074 MAX_UINT64 1075 MIN_INT8 1076 MIN_INT16 1077 MIN_INT32 1078 MIN_INT64 1079 1080 ======================================================================= 1081 MACROS DOCUMENTATION 1082 ======================================================================= 1083 1084 __STR__() 1085 1086 Description: 1087 The __STR__() makes a token into a string, used to string-ize things already 1088 defined. 1089 1090 Definition: 1091 1092 #define __STR__(x) #x 1093 1094 Parameters: 1095 x: token to make into a string 1096 1097 See Also: 1098 __TOSTR__() 1099 __FILE_LINE__ 1100 1101 ======================================================================= 1102 1103 __TOSTR__() 1104 1105 Description: 1106 The __TOSTR__() makes a token's value into a string, used to string-ize things 1107 already defined, used with __STR__. 1108 1109 Definition: 1110 1111 #define __TOSTR__(x) __STR__(x) 1112 1113 Parameters: 1114 x: token to evaluate and string-ize 1115 1116 Evaluation Value: 1117 the token's replacement as a string 1118 1119 See Also: 1120 __FILE_LINE__ 1121 __STR__() 1122 1123 ======================================================================= 1124 1125 __FILE_LINE__ 1126 1127 Description: 1128 The compiler's __FILE__ (a string) and __LINE__ (an integer) are pasted 1129 together as a single string with a ":" between. 1130 1131 Definition: 1132 1133 #define __FILE_LINE__ __FILE__ ":" __TOSTR__(__LINE__) 1134 1135 Evaluation Value: 1136 __FILE__":""__LINE__" 1137 1138 See Also: 1139 __STR__() 1140 __TOSTR__() 1141 1142 ======================================================================= 1143 */ 1144 1145 #endif /* #ifndef AEESTDDEF_H */ 1146 1147