Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 244 | chris | 1 | Imports System.Text, System.Runtime.InteropServices |
| 2 | Module J2K_Codec |
||
| 3 | Public Enum J2K_ERRORS |
||
| 4 | J2KERR_SUCCESS = 0 |
||
| 5 | J2KERR_NEED_MMX |
||
| 6 | J2KERR_NOT_ENOUGH_MEMORY |
||
| 7 | J2KERR_CORRUPTED_DATA |
||
| 8 | J2KERR_PIPE_FAILURE |
||
| 9 | J2KERR_INVALID_ARGUMENT |
||
| 10 | J2KERR_CANCELED |
||
| 11 | J2KERR_CANT_OPEN_FILE |
||
| 12 | J2KERR_OPTION_UNRECOGNIZED |
||
| 13 | J2KERR_NO_SUCH_TILE |
||
| 14 | J2KERR_NO_SUCH_RESOLUTION |
||
| 15 | J2KERR_BPP_TOO_SMALL |
||
| 16 | J2KERR_BUFFER_TOO_SMALL |
||
| 17 | J2KERR_NOT_PART1_FORMAT |
||
| 18 | J2KERR_IMAGE_IS_TOO_LARGE |
||
| 19 | J2KERR_TOO_MANY_RES_LEVEL |
||
| 20 | J2KERR_TOO_LARGE_CODEBLOCKS |
||
| 21 | J2KERR_NO_LAZINESS |
||
| 22 | J2KERR_NO_VCAUSAL |
||
| 23 | J2KERR_TOO_MANY_COMPONENTS |
||
| 24 | J2KERR_ONLY_8_BIT_COMPONENTS |
||
| 25 | J2KERR_ONLY_UNSIG_COMPONENTS |
||
| 26 | J2KERR_DOWNSAMPLED_COMPONENTS |
||
| 27 | J2KERR_ROI_NOT_SUPPORTED |
||
| 28 | J2KERR_PROGR_CHANGE_NOT_SUP |
||
| 29 | J2KERR_PACKET_HDRS_NOT_SUP |
||
| 30 | J2KERR_64BIT_BOXES_NOT_SUP |
||
| 31 | J2KERR_INTERNAL_ERROR |
||
| 32 | End Enum |
||
| 33 | |||
| 34 | Public Enum J2K_Metadata |
||
| 35 | JP2_METADATA_COMMENT_STR = 0 |
||
| 36 | JP2_METADATA_COMMENT_BIN |
||
| 37 | JP2_METADATA_GEOTIFF |
||
| 38 | JP2_METADATA_XML |
||
| 39 | JP2_METADATA_URL |
||
| 40 | JP2_METADATA_PAL |
||
| 41 | JP2_METADATA_ICC |
||
| 42 | JP2_METADATA_UNKNOWN |
||
| 43 | End Enum |
||
| 44 | |||
| 45 | Public CodingSchemes() As String = {"Lossy J2K", "Lossy JP2", "Lossless J2K", "Lossless JP2"} |
||
| 46 | |||
| 47 | 'Note that all "Long"s from the VB6 version have been changed to "Integer" |
||
| 48 | Public Structure J2K_Info |
||
| 49 | Dim Version As Integer |
||
| 50 | Dim Width As Integer |
||
| 51 | Dim Height As Integer |
||
| 52 | Dim Components As Integer |
||
| 53 | Dim FileType As Integer |
||
| 54 | Dim hTiles As Integer |
||
| 55 | Dim vTiles As Integer |
||
| 56 | End Structure |
||
| 57 | |||
| 58 | Declare Function J2K_getVersion Lib "j2k-codec" Alias "_J2K_getVersion@0" () As Integer |
||
| 59 | |||
| 60 | Declare Function J2K_getLastError Lib "j2k-codec" Alias "_J2K_getLastError@0" () As Integer |
||
| 61 | |||
| 62 | Declare Sub J2K_getErrorStr Lib "j2k-codec" Alias "_J2K_getErrorStrVB@8" (ByVal ErrCode As Integer, ByVal errStr As String) |
||
| 63 | |||
| 64 | Declare Sub J2K_Unlock Lib "j2k-codec" Alias "_J2K_Unlock@4" (ByVal Key As String) |
||
| 65 | |||
| 66 | Declare Function J2K_StartLogging Lib "j2k-codec" Alias "_J2K_StartLogging@8" (ByVal Level As Integer, ByVal Append As Boolean) As Integer |
||
| 67 | |||
| 68 | Declare Sub J2K_StopLogging Lib "j2k-codec" Alias "_J2K_StopLogging@0" () |
||
| 69 | |||
| 70 | Declare Function J2K_OpenFile Lib "j2k-codec" Alias "_J2K_OpenFile@4" (ByVal FileName As String) As Integer |
||
| 71 | |||
| 72 | Declare Function J2K_OpenMemory Lib "j2k-codec" Alias "_J2K_OpenMemory@8" (ByRef Buffer As Byte, ByVal Size As Integer) As Integer |
||
| 73 | |||
| 74 | Declare Function J2K_GetInfo Lib "j2k-codec" Alias "_J2K_GetInfo@16" (ByVal Image As Integer, ByRef Width As Integer, ByRef Height As Integer, ByRef Components As Integer) As Integer |
||
| 75 | 'In Vb6 Info was declared as ByVal - it *has* to be ByRef for DotNet to work properly! |
||
| 76 | Declare Function J2K_GetInfoEx Lib "j2k-codec" Alias "_J2K_GetInfoEx@8" (ByVal Image As Integer, ByRef info As J2K_Info) As Integer |
||
| 77 | |||
| 78 | Declare Function J2K_SelectTiles Lib "j2k-codec" Alias "_J2K_SelectTiles@16" (ByVal Image As Integer, ByVal StartTile As Integer, ByVal EndTile As Integer, ByVal Action As Integer) As Integer |
||
| 79 | |||
| 80 | Declare Function J2K_GetResolutions Lib "j2k-codec" Alias "_J2K_GetResolutions@8" (ByVal Image As Integer, ByRef Resolutions As Integer) As Integer |
||
| 81 | |||
| 82 | Declare Function J2K_GetResolutionDimensions Lib "j2k-codec" Alias "_J2K_GetResolutionDimensions@16" (ByVal Image As Integer, ByVal ResLevel As Integer, ByRef Width As Integer, ByRef Height As Integer) As Integer |
||
| 83 | |||
| 84 | Declare Function J2K_Decode Lib "j2k-codec" Alias "_J2K_Decode@20" (ByVal Image As Integer, ByRef Buffer As IntPtr, ByRef Size As Integer, Optional ByVal Options As String = "", Optional ByRef Pitch As Integer = 0) As Integer |
||
| 85 | |||
| 86 | Declare Function J2K_GetMetaData Lib "j2k-codec" Alias "_J2K_GetMetaData@20" (ByVal Image As Integer, ByRef No As Integer, ByRef Type As Integer, ByRef Buffer As IntPtr, ByRef Size As Integer) As Integer |
||
| 87 | |||
| 88 | Declare Sub J2K_Cancel Lib "j2k-codec" Alias "_J2K_Cancel@4" (ByVal Image As Integer) |
||
| 89 | |||
| 90 | Declare Sub J2K_Close Lib "j2k-codec" Alias "_J2K_Close@4" (ByVal Image As Integer) |
||
| 91 | End Module |