Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
클래스 | 매크로 | 타입정의 | 함수 | 변수
csz_inflate.cc 파일 참조
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

이 파일의 소스 코드 페이지로 가기

클래스

struct  huft
 

매크로

#define WSIZE   0x8000 /* window size--must be a power of two, and at least */
 
#define NEXTBYTE   csz__ReadByte()
 
#define FPRINTF   fprintf
 
#define FLUSH(n)   csz__WriteData(n) /* return value not used */
 
#define Trace(x)
 
#define CHECK_EOF
 
#define NEEDBITS(n)   {while(k<(n)){if(ibufcnt-- <= 0)return 1;b|=((ulg) *ibufptr++)<<k;k+=8;}}
 
#define DUMPBITS(n)   {b>>=(n);k-=(n);}
 
#define BMAX   16 /* maximum bit length of any code (16 for explode) */
 
#define N_MAX   288 /* maximum number of codes in any set */
 
#define NEEDBITS_free_tl(n)   {while(k<(n)){if(ibufcnt-- <= 0){csz__huft_free(tl);return 1;} b|=((ulg) *ibufptr++)<<k;k+=8;}}
 

타입정의

typedef char boolean
 
typedef unsigned char uch
 
typedef unsigned short ush
 
typedef unsigned long ulg
 

함수

int csz__huft_build (unsigned *, unsigned, unsigned, ush *, ush *, struct huft **, int *)
 
int csz__huft_free (struct huft *)
 
int csz__Inflate_codes (struct huft *, struct huft *, int, int)
 
int csz__Inflate_stored (void)
 
int csz__Inflate_fixed (void)
 
int csz__Inflate_dynamic (void)
 
int csz__Inflate_block (int *)
 
int csz__Inflate (void)
 
int csz__Inflate_free (void)
 
static void csz__WriteData (int)
 
void csz__Init_Inflate (long a_ibufcnt, unsigned char *a_ibufptr, long a_obufcnt, unsigned char *a_obufptr)
 
unsigned char * csz__obufptr ()
 

변수

static uch csz__slide [32768]
 
static unsigned wp
 
static unsigned border []
 
static ush cplens []
 
static ush cplext []
 
static ush cpdist []
 
static ush cpdext []
 
static ush mask []
 
static ulg bb
 
static unsigned bk
 
static uchibufptr
 
static uchobufptr
 
static long ibufcnt
 
static long obufcnt
 
static int lbits = 9
 
static int dbits = 6
 
static unsigned hufts
 
struct huftcsz__fixed_tl = (struct huft *)NULL
 
struct huftcsz__fixed_td
 
int csz__fixed_bl
 
int csz__fixed_bd
 

매크로 문서화

#define BMAX   16 /* maximum bit length of any code (16 for explode) */

csz_inflate.cc 파일의 403 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__huft_build().

#define CHECK_EOF

csz_inflate.cc 파일의 349 번째 라인에서 정의되었습니다.

#define DUMPBITS (   n)    {b>>=(n);k-=(n);}

csz_inflate.cc 파일의 362 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_block(), csz__Inflate_codes(), csz__Inflate_dynamic(), csz__Inflate_stored().

#define FLUSH (   n)    csz__WriteData(n) /* return value not used */

csz_inflate.cc 파일의 226 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate(), csz__Inflate_codes(), csz__Inflate_stored().

#define FPRINTF   fprintf

csz_inflate.cc 파일의 222 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic().

#define N_MAX   288 /* maximum number of codes in any set */

csz_inflate.cc 파일의 404 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__huft_build().

#define NEEDBITS (   n)    {while(k<(n)){if(ibufcnt-- <= 0)return 1;b|=((ulg) *ibufptr++)<<k;k+=8;}}

csz_inflate.cc 파일의 359 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_block(), csz__Inflate_codes(), csz__Inflate_dynamic(), csz__Inflate_stored().

#define NEEDBITS_free_tl (   n)    {while(k<(n)){if(ibufcnt-- <= 0){csz__huft_free(tl);return 1;} b|=((ulg) *ibufptr++)<<k;k+=8;}}

다음에 의해서 참조됨 : csz__Inflate_dynamic().

#define NEXTBYTE   csz__ReadByte()

csz_inflate.cc 파일의 218 번째 라인에서 정의되었습니다.

#define Trace (   x)

csz_inflate.cc 파일의 235 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate(), csz__Inflate_dynamic(), csz__Inflate_fixed(), csz__Inflate_stored().

#define WSIZE   0x8000 /* window size--must be a power of two, and at least */

csz_inflate.cc 파일의 214 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_codes(), csz__Inflate_stored().

타입정의 문서화

typedef char boolean

csz_inflate.cc 파일의 208 번째 라인에서 정의되었습니다.

typedef unsigned char uch

csz_inflate.cc 파일의 209 번째 라인에서 정의되었습니다.

typedef unsigned long ulg

csz_inflate.cc 파일의 211 번째 라인에서 정의되었습니다.

typedef unsigned short ush

csz_inflate.cc 파일의 210 번째 라인에서 정의되었습니다.

함수 문서화

int csz__huft_build ( unsigned *  b,
unsigned  n,
unsigned  s,
ush d,
ush e,
struct huft **  t,
int m 
)

csz_inflate.cc 파일의 410 번째 라인에서 정의되었습니다.

다음을 참조함 : a, huft::b, BMAX, csz__huft_free(), huft::e, f, g, hufts, n, huft::n, N_MAX, huft::t, huft::v, w, x, y, z.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), csz__Inflate_fixed().

int csz__huft_free ( struct huft t)

csz_inflate.cc 파일의 609 번째 라인에서 정의되었습니다.

다음을 참조함 : free, huft::t, huft::v.

다음에 의해서 참조됨 : csz__huft_build(), csz__Inflate_dynamic(), csz__Inflate_fixed(), csz__Inflate_free().

int csz__Inflate ( void  )

csz_inflate.cc 파일의 1076 번째 라인에서 정의되었습니다.

다음을 참조함 : bb, bk, csz__Inflate_block(), e, FLUSH, hufts, Trace, wp.

int csz__Inflate_block ( int e)

csz_inflate.cc 파일의 1028 번째 라인에서 정의되었습니다.

다음을 참조함 : huft::b, bb, bk, csz__Inflate_dynamic(), csz__Inflate_fixed(), csz__Inflate_stored(), DUMPBITS, int(), NEEDBITS, huft::t.

다음에 의해서 참조됨 : csz__Inflate().

int csz__Inflate_codes ( struct huft tl,
struct huft td,
int  bl,
int  bd 
)

csz_inflate.cc 파일의 638 번째 라인에서 정의되었습니다.

다음을 참조함 : huft::b, bb, bk, csz__slide, d, DUMPBITS, e, FLUSH, if(), mask, n, huft::n, NEEDBITS, huft::t, huft::v, w, wp, WSIZE.

다음에 의해서 참조됨 : csz__Inflate_fixed().

int csz__Inflate_dynamic ( void  )

csz_inflate.cc 파일의 854 번째 라인에서 정의되었습니다.

다음을 참조함 : huft::b, bb, bk, border, cpdext, cpdist, cplens, cplext, csz__huft_build(), csz__huft_free(), dbits, DUMPBITS, FPRINTF, lbits, m, mask, n, huft::n, NEEDBITS, NEEDBITS_free_tl, Trace, huft::v.

다음에 의해서 참조됨 : csz__Inflate_block().

int csz__Inflate_fixed ( void  )

csz_inflate.cc 파일의 806 번째 라인에서 정의되었습니다.

다음을 참조함 : cpdext, cpdist, cplens, cplext, csz__fixed_bd, csz__fixed_bl, csz__huft_build(), csz__huft_free(), csz__Inflate_codes(), Trace.

다음에 의해서 참조됨 : csz__Inflate_block().

int csz__Inflate_free ( void  )

csz_inflate.cc 파일의 1111 번째 라인에서 정의되었습니다.

다음을 참조함 : csz__huft_free().

int csz__Inflate_stored ( void  )

csz_inflate.cc 파일의 748 번째 라인에서 정의되었습니다.

다음을 참조함 : huft::b, bb, bk, csz__slide, DUMPBITS, FLUSH, n, NEEDBITS, Trace, w, wp, WSIZE.

다음에 의해서 참조됨 : csz__Inflate_block().

void csz__Init_Inflate ( long  a_ibufcnt,
unsigned char *  a_ibufptr,
long  a_obufcnt,
unsigned char *  a_obufptr 
)

csz_inflate.cc 파일의 1123 번째 라인에서 정의되었습니다.

다음을 참조함 : ibufcnt, ibufptr, obufcnt, obufptr.

unsigned char* csz__obufptr ( )

csz_inflate.cc 파일의 1131 번째 라인에서 정의되었습니다.

다음을 참조함 : obufptr.

static void csz__WriteData ( int  n)
static

csz_inflate.cc 파일의 1149 번째 라인에서 정의되었습니다.

다음을 참조함 : csz__slide, n, obufcnt, obufptr.

변수 문서화

ulg bb
static
unsigned bk
static
unsigned border[]
static
초기값:
= {
16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15}

csz_inflate.cc 파일의 298 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), G4Poisson(), G4ModifiedTsai::SampleCosTheta().

ush cpdext[]
static
초기값:
= {
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,
7, 7, 8, 8, 9, 9, 10, 10, 11, 11,
12, 12, 13, 13}

csz_inflate.cc 파일의 311 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), csz__Inflate_fixed().

ush cpdist[]
static
초기값:
= {
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
8193, 12289, 16385, 24577}

csz_inflate.cc 파일의 307 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), csz__Inflate_fixed().

ush cplens[]
static
초기값:
= {
3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}

csz_inflate.cc 파일의 300 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), csz__Inflate_fixed().

ush cplext[]
static
초기값:
= {
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,
3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 99, 99}

csz_inflate.cc 파일의 304 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic(), csz__Inflate_fixed().

int csz__fixed_bd

csz_inflate.cc 파일의 804 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_fixed().

int csz__fixed_bl

csz_inflate.cc 파일의 804 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_fixed().

struct huft* csz__fixed_td

csz_inflate.cc 파일의 803 번째 라인에서 정의되었습니다.

struct huft* csz__fixed_tl = (struct huft *)NULL

csz_inflate.cc 파일의 802 번째 라인에서 정의되었습니다.

uch csz__slide[32768]
static

csz_inflate.cc 파일의 293 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_codes(), csz__Inflate_stored(), csz__WriteData().

int dbits = 6
static

csz_inflate.cc 파일의 399 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic().

unsigned hufts
static

csz_inflate.cc 파일의 407 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__huft_build(), csz__Inflate().

long ibufcnt
static

csz_inflate.cc 파일의 347 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Init_Inflate().

uch* ibufptr
static

csz_inflate.cc 파일의 346 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Init_Inflate().

int lbits = 9
static

csz_inflate.cc 파일의 398 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_dynamic().

ush mask[]
static
초기값:
= {
0x0000,
0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,
0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff
}

csz_inflate.cc 파일의 317 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Inflate_codes(), csz__Inflate_dynamic(), G4Voxelizer::GetCandidatesVoxelArray(), CLHEP::HepJamesRandom::HepJamesRandom(), lookup(), CLHEP::MTwistEngine::MTwistEngine(), G4ViewParameters::ParseGeometry(), CLHEP::RanecuEngine::RanecuEngine(), CLHEP::Ranlux64Engine::Ranlux64Engine(), CLHEP::RanluxEngine::RanluxEngine(), storeAtts().

long obufcnt
static

csz_inflate.cc 파일의 347 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Init_Inflate(), csz__WriteData().

uch * obufptr
static

csz_inflate.cc 파일의 346 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : csz__Init_Inflate(), csz__obufptr(), csz__WriteData().

unsigned wp
static