/** 
            @brief Disable alert messaging for a specific event.            
            @param[in] alertEvent - the ID of the event to be disabled
		
            @return PXCM_STATUS_NO_ERROR - operation succeeded. 
            @return PXCM_STATUS_PARAM_UNSUPPORTED - unsupported parameter.
            @return PXCM_STATUS_DATA_NOT_INITIALIZED - data was not initialized.
		
            @see PXCMHandData.AlertType
        */
        public pxcmStatus DisableAlert(PXCMHandData.AlertType alertEvent)
        {
            return PXCMHandConfiguration_DisableAlert(instance, alertEvent);
        }
Esempio n. 2
0
            /**
             @brief Retrieve an IContour object using index (that relates to the given order).
             @param[in] index - the zero-based index of the requested contour (between 0 and QueryNumberOfContours()-1 ).
             @param[out] contourData - contains the extracted contour line data.
        
             @return PXCM_STATUS_NO_ERROR - successful operation.
             @return PXCM_STATUS_DATA_UNAVAILABLE  - index >= number of detected contours. 

             @see IContour       
             */
            public pxcmStatus QueryContour(Int32 index, out PXCMHandData.IContour contourData)
            {
                IntPtr cd2;
                pxcmStatus sts = PXCMHandData_IHand_QueryContour(instance, index, out cd2);
                contourData = (sts >= pxcmStatus.PXCM_STATUS_NO_ERROR) ? new IContour(cd2) : null;
                return sts;
            }
        /**
             @brief Set the tracking mode, which determines the algorithm that will be applied for tracking hands.
             @param[in] trackingMode - the tracking mode to be set. Possible values are:\n
               TRACKING_MODE_FULL_HAND   - track the entire hand skeleton.\n
               TRACKING_MODE_EXTREMITIES - track only the mask and the extremities of the hand (the points that confine the tracked hand).\n
		
             @return PXCM_STATUS_NO_ERROR - operation succeeded. 
		
             @see PXCMHandData.TrackingModeType
        */
        public pxcmStatus SetTrackingMode(PXCMHandData.TrackingModeType trackingMode)
        {
            return PXCMHandConfiguration_SetTrackingMode(instance, trackingMode);
        }
        /** 
            @brief Test the activation status of the given alert.
            @param[in] alertEvent - the ID of the event to be tested.
            @return true if the alert is enabled, false otherwise.
		
            @see PXCMHandData.AlertType
        */
        public Boolean IsAlertEnabled(PXCMHandData.AlertType alertEvent)
        {
            return PXCMHandConfiguration_IsAlertEnabled(instance, alertEvent);
        }
        /**
             @brief Activate calculation of the speed of a specific joint, according to the given mode.\n
		
             The output speed is a 3-dimensional vector, containing the the motion of the requested joint in each direction (x, y and z axis).\n
             By default, the joint speed calculation is disabled for all joints, in order to conserve CPU and memory resources.\n
             Typically the feature is only activated for a single fingertip or palm-center joint, as only the overall hand speed is useful.\n
		
             @param[in] jointLabel - the identifier of the joint.
             @param[in] jointSpeed - the speed calculation method. Possible values are:\n
               JOINT_SPEED_AVERAGE  - calculate the average joint speed, over the time period defined in the "time" parameter.\n
               JOINT_SPEED_ABSOLUTE - calculate the average of the absolute-value joint speed, over the time period defined in the "time" parameter.\n
             @param[in] time - the period in milliseconds over which the average speed will be calculated (a value of 0 will return the current speed).
		
             @return PXCM_STATUS_NO_ERROR - operation succeeded. 
             @return PXCM_STATUS_PARAM_UNSUPPORTED - one of the arguments is invalid.
		
             @see PXCMHandData.JointType
             @see PXCMHandData.JointSpeedType
         */
        public pxcmStatus EnableJointSpeed(PXCMHandData.JointType jointLabel, PXCMHandData.JointSpeedType jointSpeed, Int32 time)
        {
            return PXCMHandConfiguration_EnableJointSpeed(instance, jointLabel, jointSpeed, time);
        }
        /**
            @brief Disable calculation of the speed of a specific joint.\n
            You may want to disable the feature when it is no longer needed, in order to conserve CPU and memory resources.\n
            @param[in] jointLabel - the identifier of the joint
		
            @return PXCM_STATUS_NO_ERROR - operation succeeded.
            @return PXCM_STATUS_PARAM_UNSUPPORTED - invalid joint label.
		
            @see PXCMHandData.JointType
        */
        public pxcmStatus DisableJointSpeed(PXCMHandData.JointType jointLabel)
        {
            return PXCMHandConfiguration_DisableJointSpeed(instance, jointLabel);
        }
 internal static extern Boolean PXCMHandConfiguration_IsAlertEnabled(IntPtr instance, PXCMHandData.AlertType alertEvent);
 internal static extern pxcmStatus PXCMHandConfiguration_DisableAlert(IntPtr instance, PXCMHandData.AlertType alertEvent);
 internal static extern pxcmStatus PXCMHandConfiguration_SetTrackingMode(IntPtr instance, PXCMHandData.TrackingModeType trackingMode);
 internal static extern pxcmStatus PXCMHandConfiguration_DisableJointSpeed(IntPtr instance, PXCMHandData.JointType jointLabel);
 internal static extern pxcmStatus PXCMHandConfiguration_EnableJointSpeed(IntPtr instance, PXCMHandData.JointType jointLabel, PXCMHandData.JointSpeedType jointSpeed, Int32 time);
	/** @brief Create hand Extremity data PointConverter for PXCMHandModule
		The converter will convert extremity data to target rectangle/3dbox based on requested hand.
		@note Make sure the handData is constantly updated throughtout the session.
		@example pointConverter.CreateHandExtremityConverter(handData,PXCMHandData.ACCESS_ORDER_BY_TIME,0,PXCMHandData.EXTREMITY_CENTER);
		@param[in] handData a pointer to PXCMHandData
		@param[in] accessOrder The desired hand access order
		@param[in] index hand index
		@param[in] extremityType desired extremity type to be converted
		@return an object of the created PointConverter, or null in case of illegal arguments
	*/
	public PXCMPointConverter  CreateHandExtremityConverter(PXCMHandData handData,PXCMHandData.AccessOrderType accessOrder, Int32 index,PXCMHandData.ExtremityType extremityType)  
    {
        IntPtr inst2 = PXCMPointConverterFactory_CreateHandExtremityConverter(instance, handData.instance, accessOrder, index, extremityType);
        return (inst2 == IntPtr.Zero) ? null : new PXCMPointConverter(inst2, true);
    }
 internal extern static IntPtr PXCMPointConverterFactory_CreateHandExtremityConverter(IntPtr instance, IntPtr handData, PXCMHandData.AccessOrderType accessOrder, Int32 index, PXCMHandData.ExtremityType extremityType);