Example #1
0
    public void onConfigStatusReceived(NetMQMessage m)
    {
        //This receives the actual config of the camera
        byte type = m[0].Buffer[3];
        RCamConfigParameter parameter = (RCamConfigParameter)m[0].Buffer[4];

        switch (type)
        {
        case 0:
            byte valueByte      = m[0].Buffer[5];
            int  valueByteToInt = valueByte;
            RecCamControl.paramDict[(byte)parameter] = valueByteToInt;

            break;

        case 1:
            int valueInt = BitConverter.ToInt32(m[0].Buffer, 5);
            RecCamControl.paramDict[(byte)parameter] = valueInt;

            break;

        default:
            break;
        }
        RecCamControl.configsReceived++;
    }
Example #2
0
    IEnumerator lookForChangeInConfig()
    {
        while (configsReceived < paramDict.Count)
        {
            yield return(new WaitForEndOfFrame());
        }
        //Once we get each config, we put the parameters on the gameobjects
        foreach (byte key in paramDict.Keys)
        {
            RCamConfigParameter configParameter = (RCamConfigParameter)key;
            switch (configParameter)
            {
            case RCamConfigParameter.RCAM_CONFIG_MOVIE_FORMAT:
                resolutionDropDown.onValueChanged.RemoveAllListeners();
                onResolutionReceived(paramDict[key]);
                resolutionDropDown.onValueChanged.AddListener(delegate { onResolutionChanged(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_PHOTO_SIZE:
                megapixels.onValueChanged.RemoveAllListeners();
                megapixels.value = paramDict[key];
                megapixels.onValueChanged.AddListener(delegate { SendMP(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_WB:
                whiteBalance.onValueChanged.RemoveAllListeners();
                if (paramDict[key] == 254)
                {
                    whiteBalance.isOn = false;
                    tintWB.gameObject.SetActive(true);
                }
                else
                {
                    whiteBalance.isOn = true;
                    tintWB.gameObject.SetActive(false);
                }
                whiteBalance.onValueChanged.AddListener(delegate { SendToggleManualWB(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_ISO:
                Iso.transform.GetChild(0).GetComponent <Text>().text = paramDict[key].ToString();
                break;

            case RCamConfigParameter.RCAM_CONFIG_SHARPNESS:
                sharpness.onValueChanged.RemoveAllListeners();
                sharpness.value = paramDict[key];
                sharpness.onValueChanged.AddListener(delegate { SendSharpness(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_CONTRAST:
                contrast.onValueChanged.RemoveAllListeners();
                contrast.value = paramDict[key];
                contrast.onValueChanged.AddListener(delegate { SendContrast(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_SATURATION:
                saturation.onValueChanged.RemoveAllListeners();
                saturation.value = paramDict[key];
                saturation.onValueChanged.AddListener(delegate { SendSaturation(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_BRIGHTNESS:
                brightness.onValueChanged.RemoveAllListeners();
                brightness.value = paramDict[key];
                brightness.onValueChanged.AddListener(delegate { SendBrightness(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_PHOTO_QUALITY:
                photoQuality.onValueChanged.RemoveAllListeners();
                photoQuality.value = paramDict[key];
                photoQuality.onValueChanged.AddListener(delegate { SendPhotoQuality(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_ROTATION:
                upsideDownCamera.onValueChanged.RemoveAllListeners();
                if (paramDict[key] == 3)
                {
                    upsideDownCamera.isOn = true;
                }
                else
                {
                    upsideDownCamera.isOn = false;
                }
                upsideDownCamera.onValueChanged.AddListener(delegate { SendRotationChanged(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_IRIS:
                irisaperture.transform.GetChild(0).GetComponent <Text>().text = paramDict[key].ToString();
                break;

            case RCamConfigParameter.RCAM_CONFIG_PHOTO_BURST:
                burstMode.onValueChanged.RemoveAllListeners();
                if (paramDict[key] == 1)
                {
                    burstMode.isOn = true;
                    burstSpeed.gameObject.SetActive(true);
                }
                else
                {
                    burstMode.isOn = false;
                    burstSpeed.gameObject.SetActive(true);
                }
                burstMode.onValueChanged.AddListener(delegate { sendPhotoBurstMode(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_MANUAL_WB_TINT:
                tintWB.onValueChanged.RemoveAllListeners();
                tintWB.value = paramDict[key];
                tintWB.onValueChanged.AddListener(delegate { SendTintWB(); });
                break;

            case RCamConfigParameter.RCAM_CONFIG_PHOTO_BURST_SPEED:
                burstSpeed.onValueChanged.RemoveAllListeners();
                burstSpeed.value = paramDict[key];
                burstSpeed.onValueChanged.AddListener(delegate { SendBurstSpeed(); });
                break;

            default:
                break;
            }
        }
        paramDict.Clear();
        configsReceived = 0;
    }