ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/pmapparm.h
Revision: 2.5
Committed: Tue Aug 18 18:45:55 2015 UTC (8 years, 9 months ago) by greg
Content type: text/plain
Branch: MAIN
Changes since 2.4: +2 -1 lines
Log Message:
Added missing RCSid forgotten during initial check-in

File Contents

# Content
1 /* RCSid $Id$ */
2 /*
3 ==================================================================
4 Parameters for photon map generation; used by MKPMAP
5 For inclusion in mkpmap.c
6
7 Roland Schregle (roland.schregle@{hslu.ch, gmail.com}
8 (c) Fraunhofer Institute for Solar Energy Systems,
9 (c) Lucerne University of Applied Sciences and Arts,
10 supported by the Swiss National Science Foundation (SNSF, #147053)
11 ==================================================================
12
13 $Id: pmapparm.h,v 2.4 2015/05/26 13:31:19 rschregle Exp $
14 */
15
16
17 #ifndef PMAPPARAMS_H
18 #define PMAPPARAMS_H
19
20 #include "pmaptype.h"
21
22
23 /* Struct for passing params per photon map from rpict/rtrace/rvu */
24 typedef struct {
25 char *fileName; /* Photon map file */
26 unsigned minGather, maxGather; /* Num photons to gather */
27 unsigned long distribTarget; /* Num photons to store */
28 } PhotonMapParams;
29
30
31 extern PhotonMapParams pmapParams [NUM_PMAP_TYPES];
32
33 /* Macros for type specific photon map parameters */
34 #define globalPmapParams (pmapParams [PMAP_TYPE_GLOBAL])
35 #define preCompPmapParams (pmapParams [PMAP_TYPE_PRECOMP])
36 #define causticPmapParams (pmapParams [PMAP_TYPE_CAUSTIC])
37 #define volumePmapParams (pmapParams [PMAP_TYPE_VOLUME])
38 #define directPmapParams (pmapParams [PMAP_TYPE_DIRECT])
39 #define contribPmapParams (pmapParams [PMAP_TYPE_CONTRIB])
40
41
42 extern float pdfSamples, preDistrib, finalGather, gatherTolerance,
43 maxDistFix;
44 extern unsigned long photonHeapSizeInc, photonMaxBounce;
45 extern unsigned photonRepTime, maxPreDistrib, defaultGather;
46 #ifdef PMAP_ROI
47 extern float pmapROI [6];
48 #endif
49
50 struct PhotonMap;
51
52 int setPmapParam (struct PhotonMap **pm, const PhotonMapParams *parm);
53 /* Allocate photon map and set its parameters from parm */
54
55 unsigned long parseMultiplier (const char *num);
56 /* Evaluate numeric parameter string with optional multiplier suffix
57 (G = 10^9, M = 10^6, K = 10^3). Returns 0 if parsing fails. */
58 #endif