private static void Test_StructValueSettingAsArg(FOS_System.String testName, EHCITestingStruct root) { byte *bRootPtr = (byte *)&root; for (int i = 0; i < sizeof(EHCITestingStruct); i++) { bRootPtr[i] = 0; } root.u1 = 0xDEADBEEF; if (root.u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u1 failed!"); } root.u2 = 0x12345678; if (root.u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u2 failed! Affected u1 value."); } if (root.u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u2 failed!"); } root.u3 = 0xBEEFDEAD; if (root.u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u3 failed! Affected u1 value."); } if (root.u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u3 failed! Affected u2 value."); } if (root.u3 != 0xBEEFDEAD || bRootPtr[8] != 0xAD || bRootPtr[9] != 0xDE || bRootPtr[10] != 0xEF || bRootPtr[11] != 0xBE) { DBGERR(testName, "Getting/setting struct u3 failed!"); } root.u4 = 0x09876543; if (root.u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u1 value."); } if (root.u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u2 value."); } if (root.u3 != 0xBEEFDEAD || bRootPtr[8] != 0xAD || bRootPtr[9] != 0xDE || bRootPtr[10] != 0xEF || bRootPtr[11] != 0xBE) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u3 value."); } if (root.u4 != 0x09876543 || bRootPtr[12] != 0x43 || bRootPtr[13] != 0x65 || bRootPtr[14] != 0x87 || bRootPtr[15] != 0x09) { DBGERR(testName, "Getting/setting struct u4 failed!"); } }
private static void Test_StructValueSettingAsArg(FOS_System.String testName, EHCITestingStruct* rootPtr, byte* bRootPtr) { for (int i = 0; i < sizeof(EHCITestingStruct); i++) { bRootPtr[i] = 0; } rootPtr->u1 = 0xDEADBEEF; if (rootPtr->u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u1 failed!"); } rootPtr->u2 = 0x12345678; if (rootPtr->u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u2 failed! Affected u1 value."); } if (rootPtr->u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u2 failed!"); } rootPtr->u3 = 0xBEEFDEAD; if (rootPtr->u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u3 failed! Affected u1 value."); } if (rootPtr->u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u3 failed! Affected u2 value."); } if (rootPtr->u3 != 0xBEEFDEAD || bRootPtr[8] != 0xAD || bRootPtr[9] != 0xDE || bRootPtr[10] != 0xEF || bRootPtr[11] != 0xBE) { DBGERR(testName, "Getting/setting struct u3 failed!"); } rootPtr->u4 = 0x09876543; if (rootPtr->u1 != 0xDEADBEEF || bRootPtr[0] != 0xEF || bRootPtr[1] != 0xBE || bRootPtr[2] != 0xAD || bRootPtr[3] != 0xDE) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u1 value."); } if (rootPtr->u2 != 0x12345678 || bRootPtr[4] != 0x78 || bRootPtr[5] != 0x56 || bRootPtr[6] != 0x34 || bRootPtr[7] != 0x12) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u2 value."); } if (rootPtr->u3 != 0xBEEFDEAD || bRootPtr[8] != 0xAD || bRootPtr[9] != 0xDE || bRootPtr[10] != 0xEF || bRootPtr[11] != 0xBE) { DBGERR(testName, "Getting/setting struct u4 failed! Affected u3 value."); } if (rootPtr->u4 != 0x09876543 || bRootPtr[12] != 0x43 || bRootPtr[13] != 0x65 || bRootPtr[14] != 0x87 || bRootPtr[15] != 0x09) { DBGERR(testName, "Getting/setting struct u4 failed!"); } }