public void Test_0140_QLDevice_GetIndicator_SetIndicator()
        {
            QLError error = QuickLink2API.QLDevice_Start(Test_SetUp.Helper.DeviceId);

            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // The initial IndicatorModes for the right and left indicators
            QLIndicatorMode initialLeftMode;
            QLIndicatorMode initialRightMode;

            // Get the initial modes
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out initialLeftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out initialRightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Set the indicators to an arbitrary mode
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            QLIndicatorMode leftMode  = QLIndicatorMode.QL_INDICATOR_MODE_OFF;
            QLIndicatorMode rightMode = QLIndicatorMode.QL_INDICATOR_MODE_OFF;

            // Get the indicators modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS, rightMode);

            // Set the indicators
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS_FILTERED);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS_FILTERED);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Get the indicators modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS_FILTERED, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS_FILTERED, rightMode);

            // Set the indicators
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_ON);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_OFF);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Get the indicator modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_ON, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_OFF, rightMode);

            // Restore device to initial indicator modes
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, initialLeftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, initialRightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            error = QuickLink2API.QLDevice_Stop(Test_SetUp.Helper.DeviceId);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
        }
Beispiel #2
0
        public void Test_0480_QLDevice_SetIndicator_UsingDeviceGroupId()
        {
            // Note: This only uses the initially chosen device.

            int     deviceGroupId;
            QLError error = QuickLink2API.QLDeviceGroup_Create(out deviceGroupId);

            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.Greater(deviceGroupId, 0);

            error = QuickLink2API.QLDeviceGroup_AddDevice(deviceGroupId, Test_SetUp.Helper.DeviceId);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            error = QuickLink2API.QLDevice_Start(deviceGroupId);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // The initial IndicatorModes for the right and left indicators
            QLIndicatorMode initialLeftMode;
            QLIndicatorMode initialRightMode;

            // Get the initial modes
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out initialLeftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out initialRightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Set the indicators to an arbitrary mode
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            QLIndicatorMode leftMode  = QLIndicatorMode.QL_INDICATOR_MODE_OFF;
            QLIndicatorMode rightMode = QLIndicatorMode.QL_INDICATOR_MODE_OFF;

            // Get the indicators modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS, rightMode);

            // Set the indicators
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS_FILTERED);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS_FILTERED);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Get the indicators modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_LEFT_EYE_STATUS_FILTERED, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_RIGHT_EYE_STATUS_FILTERED, rightMode);

            // Set the indicators
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_ON);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT,
                                                        QLIndicatorMode.QL_INDICATOR_MODE_OFF);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            // Get the indicator modes and check that they were set correctly
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, out leftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_GetIndicator(Test_SetUp.Helper.DeviceId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, out rightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_ON, leftMode);
            Assert.AreEqual(QLIndicatorMode.QL_INDICATOR_MODE_OFF, rightMode);

            // Restore device to initial indicator modes
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_LEFT, initialLeftMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
            error = QuickLink2API.QLDevice_SetIndicator(deviceGroupId, QLIndicatorType.QL_INDICATOR_TYPE_RIGHT, initialRightMode);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);

            error = QuickLink2API.QLDevice_Stop(deviceGroupId);
            Assert.AreEqual(QLError.QL_ERROR_OK, error);
        }