1/* 2 * Definitions for the types that are built into the compiler. 3 */ 4 5/* BPoint object. */ 6type #'BPNT' point 7{ 8 float x, 9 float y 10}; 11 12/* BRect object. */ 13type #'RECT' rect 14{ 15 float left, 16 float top, 17 float right, 18 float bottom 19}; 20 21/* rgb_color object. */ 22type #'RGBC' rgb_color 23{ 24 uint8 red, 25 uint8 green, 26 uint8 blue, 27 uint8 alpha = 0xFF 28}; 29 30/* Application signature. */ 31type(1, "BEOS:APP_SIG") #'MIMS' app_signature 32{ 33 string signature // max 240 bytes (including null) 34}; 35 36/* Application launch flags */ 37type(1, "BEOS:APP_FLAGS") #'APPF' app_flags 38{ 39 // B_SINGLE_LAUNCH (0x0) 40 // B_MULTIPLE_LAUNCH (0x1) 41 // B_EXCLUSIVE_LAUNCH (0x2) 42 // B_BACKGROUND_APP (0x4) 43 // B_ARGV_ONLY (0x8) 44 uint32 flags 45}; 46 47/* 48 * Application version info. Should always be 340 bytes. The system 49 * will automatically append 340 additional bytes with "system info". 50 */ 51type(1, "BEOS:APP_VERSION") #'APPV' app_version 52{ 53 uint32 major, 54 uint32 middle, 55 uint32 minor, 56 57 // B_APPV_DEVELOPMENT (0) 58 // B_APPV_ALPHA (1) 59 // B_APPV_BETA (2) 60 // B_APPV_GAMMA (3) 61 // B_APPV_GOLDEN_MASTER (4) 62 // B_APPV_FINAL (5) 63 uint32 variety, 64 65 uint32 internal, 66 67 string short_info[64], 68 string long_info[256] 69}; 70 71/* Large (32x32, 8-bit) application icon. */ 72type(101, "BEOS:L:STD_ICON") #'ICON' large_icon 73{ 74 array icon[1024] 75}; 76 77/* Small (16x16, 8-bit) application icon. */ 78type(101, "BEOS:M:STD_ICON") #'MICN' mini_icon 79{ 80 array icon[256] 81}; 82 83/* Supported file types. */ 84type(1, "BEOS:FILE_TYPES") #'MSGG' file_types 85{ 86 // contains one or more fields called "types", each of which 87 // has a MIME type value, for example: "types" = "text/plain" 88 message types 89}; 90