Пример #1
0
        void CallEntryPoint(
            IntPtr pObject,
            eNkMAIDCommand ulCommand,
            UInt32 ulParam,
            eNkMAIDDataType ulDataType,
            IntPtr data,
            IntPtr pfnComplete,
            IntPtr refComplete)
        {
            Debug.Assert(_md3 != null);

            Console.WriteLine("CallEntryPoint: {0}", ulCommand.ToString());

            try
            {
                eNkMAIDResult result = _md3.EntryPoint(
                    pObject,
                    ulCommand,
                    ulParam,
                    ulDataType,
                    data,
                    pfnComplete,
                    refComplete);

                switch (result)
                {
                // Note: Ignore these return values
                case eNkMAIDResult.kNkMAIDResult_NoError:
                case eNkMAIDResult.kNkMAIDResult_Pending:
                case eNkMAIDResult.kNkMAIDResult_OrphanedChildren:
                    break;

                default:
                    Console.WriteLine("===>NikonException {0},{1},{2},{3},{4}", result, ulCommand, ulParam, ulDataType, data);

                    /*
                     * throw new NikonException(
                     *  result,
                     *  ulCommand,
                     *  ulParam,
                     *  ulDataType,
                     *  data);
                     */
                    break;
                }
            }
            catch (System.AccessViolationException ex)
            {
                Console.WriteLine("===> {0}", ex.Message);
            }
        }
Пример #2
0
 public NikonException(eNkMAIDResult errorCode, eNkMAIDCommand errorCommand, UInt32 errorParam, eNkMAIDDataType errorDataType, IntPtr errorData)
     : base(string.Format("[{0}] ({1}, {2}, {3}, {4})",
                          errorCode.ToString(),
                          errorCommand.ToString(),
                          errorParam.ToString(),
                          errorDataType.ToString(),
                          errorData.ToString()))
 {
     _errorCode     = errorCode;
     _errorCommand  = errorCommand;
     _errorParam    = errorParam;
     _errorDataType = errorDataType;
     _errorData     = errorData;
 }
Пример #3
0
        void CompletionProc(
            IntPtr pObject,
            eNkMAIDCommand ulCommand,
            UInt32 ulParam,
            eNkMAIDDataType ulDataType,
            IntPtr data,
            IntPtr refComplete,
            eNkMAIDResult nResult)
        {
            Context *context = (Context *)refComplete.ToPointer();

            context->Complete = true;
            context->Result   = nResult;
        }
Пример #4
0
        void CallEntryPoint(
            IntPtr pObject,
            eNkMAIDCommand ulCommand,
            UInt32 ulParam,
            eNkMAIDDataType ulDataType,
            IntPtr data,
            IntPtr pfnComplete,
            IntPtr refComplete)
        {
            Debug.Assert(_md3 != null);

            eNkMAIDResult result = _md3.EntryPoint(
                pObject,
                ulCommand,
                ulParam,
                ulDataType,
                data,
                pfnComplete,
                refComplete);

            switch (result)
            {
            // Note: Ignore these return values
            case eNkMAIDResult.kNkMAIDResult_NoError:
            case eNkMAIDResult.kNkMAIDResult_Pending:
            case eNkMAIDResult.kNkMAIDResult_OrphanedChildren:
                break;

            default:
                throw new NikonException(
                          result,
                          ulCommand,
                          ulParam,
                          ulDataType,
                          data);
            }
        }
Пример #5
0
 public NikonException(eNkMAIDResult errorCode, eNkMAIDCommand errorCommand, UInt32 errorParam, eNkMAIDDataType errorDataType, Int32 errorData)
     : base(string.Format("[{0}] ({1}, {2}, {3}, {4})",
         errorCode.ToString(),
         errorCommand.ToString(),
         errorParam.ToString(),
         errorDataType.ToString(),
         errorData.ToString()))
 {
     _errorCode = errorCode;
     _errorCommand = errorCommand;
     _errorParam = errorParam;
     _errorDataType = errorDataType;
     _errorData = errorData;
 }
Пример #6
0
 void CompletionProc(
     IntPtr pObject,
     eNkMAIDCommand ulCommand,
     UInt32 ulParam,
     eNkMAIDDataType ulDataType,
     Int32 data,
     IntPtr refComplete,
     eNkMAIDResult nResult)
 {
     Context* context = (Context*)refComplete.ToPointer();
     context->Complete = true;
     context->Result = nResult;
 }