home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / cset21v6.zip / MMPM2TK / TK / ULIOT / ULGDAT.C < prev    next >
C/C++ Source or Header  |  1993-03-26  |  8KB  |  162 lines

  1. /*************************START OF SPECIFICATIONS *************************/
  2. /* SOURCE FILE NAME:  ULGDAT.C                                            */
  3. /*                                                                        */
  4. /* DESCRIPTIVE NAME: Ultimotion IO Proc Global variables                  */
  5. /*                                                                        */
  6. /* COPYRIGHT:     IBM - International Business Machines                   */
  7. /*            Copyright (c) IBM Corporation  1991, 1992, 1993             */
  8. /*                        All Rights Reserved                             */
  9. /*                                                                        */
  10. /* STATUS: OS/2 Release 2.0                                               */
  11. /*                                                                        */
  12. /************************* END OF SPECIFICATIONS **************************/
  13.  
  14. #include        <stdio.h>
  15.  
  16. #define         INCL_DOS                       /* #define  INCL_DOSPROCESS. */
  17. #define         INCL_ERRORS
  18. #define         INCL_WIN
  19. #define         INCL_GPI
  20. #include        <os2.h>                        /* OS/2 headers.             */
  21. #include        <pmbitmap.h>
  22.  
  23. #define         INCL_OS2MM
  24. #define         INCL_MMIO_CODEC
  25. #define         INCL_MMIO_DOSIOPROC
  26. #include        <os2me.h>                      /* Multi-Media IO extensions.*/
  27. #include        <hhpheap.h>
  28. #include        <ioi.h>
  29.  
  30. /********************************************************************/
  31. /*  FILE FORMAT SPECIFIC                                            */
  32. /*  DLL Global Process Instance Data - one copy per each process    */
  33. /********************************************************************/
  34.  
  35. /************************************************************************************/
  36. /*  FILE FORMAT SPECIFIC                                                            */
  37. /* Global Shared Data Segment - File Format specific enabled capabilities           */
  38. /*    - typedef in ioi.h declared here to be FFIO specific and externed back        */
  39. /************************************************************************************/
  40.  
  41. #pragma data_seg (SHR_SEG)           // Put this into a seperate data seg
  42.  
  43. FFIOFNCT ffiofnct = {
  44.  
  45.    (PFN)NULL,                          // MMIOM_GETCF     
  46.    (PFN)NULL,                          // MMIOM_GETCFENTRY
  47.  
  48.    (PFN)IOProcOpen,                    // MMIOM_CLOSE            
  49.    (PFN)IOProcClose,                   // MMIOM_OPEN             
  50.    (PFN)IOProcRead,                    // MMIOM_READ             
  51.    (PFN)IOProcSeek,                    // MMIOM_SEEK             
  52.    (PFN)NULL,                          // MMIOM_WRITE            
  53.  
  54.    (PFN)IOProcIdentifyFile,            // MMIOM_IDENTIFYFILE     
  55.    (PFN)IOProcGetHeader,               // MMIOM_GETHEADER        
  56.    (PFN)NULL,                          // MMIOM_SETHEADER        
  57.    (PFN)IOProcQueryHeaderLength,       // MMIOM_QUERYHEADERLENGTH
  58.    (PFN)IOProcGetFormatName,           // MMIOM_GETFORMATNAME    
  59.    (PFN)IOProcGetFormatInfo,           // MMIOM_GETFORMATINFO    
  60.    (PFN)IOProcSeek,                    // MMIOM_SEEKBYTIME
  61.    (PFN)NULL,                          // MMIOM_TEMPCHANGE       
  62.    (PFN)NULL,                          // MMIOM_BEGININSERT      
  63.    (PFN)NULL,                          // MMIOM_ENDINSERT        
  64.    (PFN)NULL,                          // MMIOM_SAVE             
  65.    (PFN)IOProcSet,                     // MMIOM_SET              
  66.    (PFN)NULL,                          // MMIOM_COMPRESS         
  67.    (PFN)IOProcDecompress,              // MMIOM_DECOMPRESS       
  68.    (PFN)IOProcMultiTrackRead,          // MMIOM_MULTITRACKREAD   
  69.    (PFN)NULL,                          // MMIOM_MULTITRACKWRITE  
  70.                                                      
  71.    (PFN)NULL,                          // MMOIM_DELETE      
  72.    (PFN)NULL,                          // MMIOM_BEGINGROUP     
  73.    (PFN)NULL,                          // MMIOM_ENDGROUP         
  74.    (PFN)NULL,                          // MMIOM_UNDO        
  75.    (PFN)NULL,                          // MMIOM_REDO
  76.    (PFN)NULL,                          // MMIOM_BEGINSTREAM     
  77.    (PFN)NULL,                          // MMIOM_ENDSTREAM   
  78.  
  79.    (PFN)NULL,                          // MMIOM_COPY      
  80.    (PFN)NULL,                          // MMIOM_CUT       
  81.    (PFN)NULL,                          // MMIOM_PASTE     
  82.    (PFN)NULL                           // MMIOM_CLEAR     
  83. };
  84.  
  85. #pragma data_seg ()
  86.  
  87. /****************************************************************************/
  88. /*              CODEC ini file info structure                               */
  89. /*                                                                          */
  90. /* *NOTE* - This table should be represented in the MMIO.INI file instead of*/
  91. /*          HARD-CODED in this IO PROC.                                     */
  92. /****************************************************************************/
  93. CODECINIFILEINFO acifiTable[] = {
  94.    {
  95.       sizeof(CODECINIFILEINFO),
  96.       FOURCC_FFIO,
  97.       "ULBDC4",                                     /* szDCIODLLName[] - Decompression IO Proc DLL name */
  98.       "CodecEntry",                                 /* szDCIOProcName[] - Decompression IO Proc entry point procedure name */
  99.       UM_VIDEO_COMPRESSION_TYPE_BH146,              /* ulDecompressionType - Id of each decompression type */
  100.       0L,
  101.       MMIO_MEDIATYPE_DIGITALVIDEO,
  102.       CODEC_DECOMPRESS+                             /* ulCapsFlags - Capabilities Flag */
  103.          CODEC_SELFHEAL+                            /* ulCapsFlags - Capabilities Flag */
  104.          CODEC_ORIGIN_UPPERLEFT+                    /* ulCapsFlags - Capabilities Flag */
  105.          CODEC_4_BIT_COLOR,                         /* ulCapsFlags - Capabilities Flag */
  106.       0,
  107.       0,
  108.       0,
  109.       0,
  110.       0,
  111.       8,
  112.       8,
  113.       0,
  114.    },
  115.    {
  116.       sizeof(CODECINIFILEINFO),
  117.       FOURCC_FFIO,
  118.       "ULBDC8",                                     /* szDCIODLLName[] - Decompression IO Proc DLL name */
  119.       "CodecEntry",                                 /* szDCIOProcName[] - Decompression IO Proc entry point procedure name */
  120.       UM_VIDEO_COMPRESSION_TYPE_BH146,              /* ulDecompressionType - Id of each decompression type */
  121.       0L,
  122.       MMIO_MEDIATYPE_DIGITALVIDEO,
  123.       CODEC_DECOMPRESS+                             /* ulCapsFlags - Capabilities Flag */
  124.          CODEC_SELFHEAL+                            /* ulCapsFlags - Capabilities Flag */
  125.          CODEC_ORIGIN_UPPERLEFT+                    /* ulCapsFlags - Capabilities Flag */
  126.          CODEC_MULAPERTURE+                         /* ulCapsFlags - Capabilities Flag */ 
  127.          CODEC_DIRECT_DISPLAY+                      /* ulCapsFlags - Capabilities Flag */
  128.          CODEC_8_BIT_COLOR,                         /* ulCapsFlags - Capabilities Flag */
  129.       0,
  130.       0,
  131.       0,
  132.       0,
  133.       0,
  134.       8,
  135.       8,
  136.       0,
  137.    },
  138.    {
  139.       sizeof(CODECINIFILEINFO),
  140.       FOURCC_FFIO,
  141.       "ULBDC16",                                    /* szDCIODLLName[] - Decompression IO Proc DLL name */
  142.       "CodecEntry",                                 /* szDCIOProcName[] - Decompression IO Proc entry point procedure name */
  143.       UM_VIDEO_COMPRESSION_TYPE_BH146,              /* ulDecompressionType - Id of each decompression type */
  144.       0L,
  145.       MMIO_MEDIATYPE_DIGITALVIDEO,
  146.       CODEC_DECOMPRESS+                             /* ulCapsFlags - Capabilities Flag */
  147.          CODEC_SELFHEAL+                            /* ulCapsFlags - Capabilities Flag */
  148.          CODEC_ORIGIN_UPPERLEFT+                    /* ulCapsFlags - Capabilities Flag */
  149.          CODEC_DIRECT_DISPLAY+                      /* ulCapsFlags - Capabilities Flag */
  150.          CODEC_16_BIT_COLOR,                        /* ulCapsFlags - Capabilities Flag */
  151.       0,
  152.       0,
  153.       0,
  154.       0,
  155.       0,
  156.       8,
  157.       8,
  158.       0,
  159.    },
  160. };
  161.  
  162.