CHDKPTP.CHDKPTPSession.CHDK_Version C# (CSharp) Method

CHDK_Version() public method

public CHDK_Version ( int &major, int &minor ) : bool
major int
minor int
return bool
        public bool CHDK_Version(out int major, out int minor)
        {
            SendCHDKCommand(CHDK_PTP_Command.PTP_CHDK_Version, 0);

            if (ptp.Code == (ushort)PTP_Response.PTP_RC_OperationNotSupported)
            {
                major = -1;
                minor = -1;
                return false;
            }
            else
            {
                Ensure_PTP_RC_OK();
            }

            major = ptp.Param1;
            minor = ptp.Param2;

            return true;
        }

Usage Example

Exemplo n.º 1
0
        private static CHDKPTPDevice CheckSupported(PTPDevice ptpdev)
        {
            var dev = ptpdev as CHDKPTPDevice;

            if (!dev.PTPSupported)
            {
                return dev;
            }

            try
            {
                if (!dev.Open())
                {
                    return dev;
                }

                var sess = new CHDKPTPSession(dev);
                sess.OpenSession();
                if (sess.CHDK_Version(out dev.CHDKVersionMajor, out dev.CHDKVersionMinor))
                {
                    if (dev.CHDKVersionMajor == CHDK_VERSION_MAJOR && dev.CHDKVersionMinor >= CHDK_VERSION_MINOR)
                    {
                        CHDK_ScriptSupport flags;
                        sess.CHDK_ScriptSupport(out flags);
                        if (flags.HasFlag(CHDK_ScriptSupport.PTP_CHDK_SCRIPT_SUPPORT_LUA))
                        {
                            dev.CHDKSupported = true;
                        }
                    }

                    sess.CloseSession();
                }
            }
            catch (PTPException)
            {
                // make sure CHDKSupported has not already been set
                dev.CHDKSupported = false;
            }
            finally
            {
                if (dev.IsOpen)
                {
                    dev.Close();
                }
            }

            return dev;
        }
All Usage Examples Of CHDKPTP.CHDKPTPSession::CHDK_Version