Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/wsrm.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #ifndef _WSRM_H_ | |
| 7 #define _WSRM_H_ | |
| 8 | |
| 9 #define IPPROTO_RM 113 | |
| 10 #define MAX_MCAST_TTL 255 | |
| 11 | |
| 12 #define RM_OPTIONSBASE 1000 | |
| 13 #define RM_RATE_WINDOW_SIZE (RM_OPTIONSBASE + 1) | |
| 14 #define RM_SET_MESSAGE_BOUNDARY (RM_OPTIONSBASE + 2) | |
| 15 #define RM_FLUSHCACHE (RM_OPTIONSBASE + 3) | |
| 16 #define RM_SENDER_WINDOW_ADVANCE_METHOD (RM_OPTIONSBASE + 4) | |
| 17 #define RM_SENDER_STATISTICS (RM_OPTIONSBASE + 5) | |
| 18 #define RM_LATEJOIN (RM_OPTIONSBASE + 6) | |
| 19 #define RM_SET_SEND_IF (RM_OPTIONSBASE + 7) | |
| 20 #define RM_ADD_RECEIVE_IF (RM_OPTIONSBASE + 8) | |
| 21 #define RM_DEL_RECEIVE_IF (RM_OPTIONSBASE + 9) | |
| 22 #define RM_SEND_WINDOW_ADV_RATE (RM_OPTIONSBASE + 10) | |
| 23 #define RM_USE_FEC (RM_OPTIONSBASE + 11) | |
| 24 #define RM_SET_MCAST_TTL (RM_OPTIONSBASE + 12) | |
| 25 #define RM_RECEIVER_STATISTICS (RM_OPTIONSBASE + 13) | |
| 26 #define RM_HIGH_SPEED_INTRANET_OPT (RM_OPTIONSBASE + 14) | |
| 27 | |
| 28 #define SENDER_DEFAULT_RATE_KBITS_PER_SEC 56 | |
| 29 #define SENDER_DEFAULT_WINDOW_SIZE_BYTES 10 *1000*1000 | |
| 30 #define SENDER_DEFAULT_WINDOW_ADV_PERCENTAGE 15 | |
| 31 | |
| 32 #define MAX_WINDOW_INCREMENT_PERCENTAGE 25 | |
| 33 #define SENDER_DEFAULT_LATE_JOINER_PERCENTAGE 0 | |
| 34 #define SENDER_MAX_LATE_JOINER_PERCENTAGE 75 | |
| 35 | |
| 36 #define BITS_PER_BYTE 8 | |
| 37 #define LOG2_BITS_PER_BYTE 3 | |
| 38 | |
| 39 enum eWINDOW_ADVANCE_METHOD { | |
| 40 E_WINDOW_ADVANCE_BY_TIME = 1,E_WINDOW_USE_AS_DATA_CACHE | |
| 41 }; | |
| 42 | |
| 43 typedef struct _RM_SEND_WINDOW { | |
| 44 ULONG RateKbitsPerSec; | |
| 45 ULONG WindowSizeInMSecs; | |
| 46 ULONG WindowSizeInBytes; | |
| 47 } RM_SEND_WINDOW; | |
| 48 | |
| 49 typedef struct _RM_SENDER_STATS { | |
| 50 ULONGLONG DataBytesSent; | |
| 51 ULONGLONG TotalBytesSent; | |
| 52 ULONGLONG NaksReceived; | |
| 53 ULONGLONG NaksReceivedTooLate; | |
| 54 ULONGLONG NumOutstandingNaks; | |
| 55 ULONGLONG NumNaksAfterRData; | |
| 56 ULONGLONG RepairPacketsSent; | |
| 57 ULONGLONG BufferSpaceAvailable; | |
| 58 ULONGLONG TrailingEdgeSeqId; | |
| 59 ULONGLONG LeadingEdgeSeqId; | |
| 60 ULONGLONG RateKBitsPerSecOverall; | |
| 61 ULONGLONG RateKBitsPerSecLast; | |
| 62 ULONGLONG TotalODataPacketsSent; | |
| 63 } RM_SENDER_STATS; | |
| 64 | |
| 65 typedef struct _RM_RECEIVER_STATS { | |
| 66 ULONGLONG NumODataPacketsReceived; | |
| 67 ULONGLONG NumRDataPacketsReceived; | |
| 68 ULONGLONG NumDuplicateDataPackets; | |
| 69 ULONGLONG DataBytesReceived; | |
| 70 ULONGLONG TotalBytesReceived; | |
| 71 ULONGLONG RateKBitsPerSecOverall; | |
| 72 ULONGLONG RateKBitsPerSecLast; | |
| 73 ULONGLONG TrailingEdgeSeqId; | |
| 74 ULONGLONG LeadingEdgeSeqId; | |
| 75 ULONGLONG AverageSequencesInWindow; | |
| 76 ULONGLONG MinSequencesInWindow; | |
| 77 ULONGLONG MaxSequencesInWindow; | |
| 78 ULONGLONG FirstNakSequenceNumber; | |
| 79 ULONGLONG NumPendingNaks; | |
| 80 ULONGLONG NumOutstandingNaks; | |
| 81 ULONGLONG NumDataPacketsBuffered; | |
| 82 ULONGLONG TotalSelectiveNaksSent; | |
| 83 ULONGLONG TotalParityNaksSent; | |
| 84 } RM_RECEIVER_STATS; | |
| 85 | |
| 86 typedef struct _RM_FEC_INFO { | |
| 87 USHORT FECBlockSize; | |
| 88 USHORT FECProActivePackets; | |
| 89 UCHAR FECGroupSize; | |
| 90 BOOLEAN fFECOnDemandParityEnabled; | |
| 91 } RM_FEC_INFO; | |
| 92 #endif |
