⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbxval.pro

📁 basic median filter simulation
💻 PRO
字号:
function dbxval,entry,idltype,nvalues,sbyte,nbytes,bswap=bswap;+; NAME: ;       DBXVAL;; PURPOSE:      ;       Quickly return a value of the specified item number     ; EXPLANATION:;       Procedure to quickly return a value of the specified item number;       from the entry.;; CALLING SEQUENCE:     ;       result = dbxval( entry, idltype, nvalues, sbyte, nbytes );; INPUTS        ;       entry - entry or entries from data base (bytarr) ;       idltype - idl data type (obtained with db_item_info);       nvalues - number of values to return (obtained with db_item);       sbyte - starting byte in the entry (obtained with db_item);       nbytes - number of bytes (needed only for string type);                       (obtained with db_item);; OUTPUTS:      ;       function value is value of the specified item in entry;; KEYWORDS:;       bswap - If set, then IEEE_TO_HOST is called.;; RESTRICTIONS: ;       To increase speed the routine assumes that entry and item are;       valid and that the data base is already opened using dbopen.;; REVISION HISTORY:     ;       version 0  D. Lindler Nov. 1987  (for new db format);       Version 1, William Thompson, GSFC, 28 March 1994.;                       Incorporated into CDS library.;       Version 2, Richard Schwartz, GSFC/SDAC, 23 August 1996;                       Allowed Entry to have 2 dimensions;       Version 2.1, 22 Feb 1997, JK Feggans, ;                               avoid reform for strings arrays.;       Version 2.2     Use overwrite with REFORM(),  W. Landsman,  May 1997;       Converted to IDL V5.0   W. Landsman   September 1997;       Work for multiple-valued strings   W. Landsman   October 2000;       Add new 64bit & unsigned integer datatypes W.Landsman   July 2001;       Version 3, 2-May-2003, JK Feggans/Sigma, W.T. Thompson;           Added BSWAP keyword to avoid floating errors on some platforms.;-;----------------------------------------------------------------;;nentry = n_elements(entry[0,*])case idltype of                 ;case of data type  1: val = byte(entry[sbyte:sbyte+nvalues-1,*],0,nvalues,nentry)  2: val = fix(entry[sbyte:sbyte+nvalues*2-1,*],0,nvalues,nentry)  3: val = long(entry[sbyte:sbyte+nvalues*4-1,*],0,nvalues,nentry)  4: val = float(entry[sbyte:sbyte+nvalues*4-1,*],0,nvalues,nentry)  5: val = double(entry[sbyte:sbyte+nvalues*8-1,*],0,nvalues,nentry)  7: val = string( reform( entry[sbyte:sbyte+nbytes-1,*], nbytes/nvalues, $                   nvalues, nentry)) 12: val = uint(entry[sbyte:sbyte+nvalues*2-1,*],0,nvalues,nentry) 13: val = ulong(entry[sbyte:sbyte+nvalues*4-1,*],0,nvalues,nentry) 14: val = long64(entry[sbyte:sbyte+nvalues*8-1,*],0,nvalues,nentry) 15: val = ulong64(entry[sbyte:sbyte+nvalues*8-1,*],0,nvalues,nentry)endcase;if keyword_set(bswap) then ieee_to_host,val,idltype=idltypeif ( nvalues EQ 1 and nentry EQ 1) then return,val[0] else $        if idltype eq 7 then return,val else return,reform(val,/overwrite)end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -