RenderMan API
23.0
brickmap.h
Go to the documentation of this file.
1
/*
2
# ------------------------------------------------------------------------------
3
#
4
# Copyright (c) 1986-2019 Pixar. All rights reserved.
5
#
6
# The information in this file (the "Software") is provided for the exclusive
7
# use of the software licensees of Pixar ("Licensees"). Licensees have the
8
# right to incorporate the Software into other products for use by other
9
# authorized software licensees of Pixar, without fee. Except as expressly
10
# permitted herein, the Software may not be disclosed to third parties, copied
11
# or duplicated in any form, in whole or in part, without the prior written
12
# permission of Pixar.
13
#
14
# The copyright notices in the Software and this entire statement, including the
15
# above license grant, this restriction and the following disclaimer, must be
16
# included in all copies of the Software, in whole or in part, and all permitted
17
# derivative works of the Software, unless such copies or derivative works are
18
# solely in the form of machine-executable object code generated by a source
19
# language processor.
20
#
21
# PIXAR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
22
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL PIXAR BE
23
# LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
24
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
25
# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
26
# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. IN NO CASE WILL
27
# PIXAR'S TOTAL LIABILITY FOR ALL DAMAGES ARISING OUT OF OR IN CONNECTION WITH
28
# THE USE OR PERFORMANCE OF THIS SOFTWARE EXCEED $50.
29
#
30
# Pixar
31
# 1200 Park Ave
32
# Emeryville CA 94608
33
#
34
# ------------------------------------------------------------------------------
35
*/
36
37
38
#ifndef _BRICKMAP_H_
39
#define _BRICKMAP_H_
40
41
#include "
prmanapi.h
"
// for PRMANAPI
42
43
typedef
void
*
BkmBrickMap
;
44
typedef
void
*
BkmBrickMapNode
;
// was unsigned int in API version 2
45
46
#ifdef __cplusplus
47
extern
"C"
{
48
#endif
49
50
/* Brick map API version number */
51
#define RMAN_BRICKMAP_API_VERSION 3
52
53
/* Brick map API */
54
PRMANAPI
extern
BkmBrickMap
BkmOpenBrickMapFile
(
char
* filename);
55
PRMANAPI
extern
int
BkmGetBrickMapInfo
(
56
BkmBrickMap
brickmap,
57
char
const
* request,
58
void
* result);
59
PRMANAPI
extern
int
BkmGetOctreeRoots
(
60
BkmBrickMap
brickmap,
61
BkmBrickMapNode
roots[7]);
62
PRMANAPI
extern
int
BkmGetOctreeChildren
(
63
BkmBrickMapNode
node,
64
BkmBrickMapNode
children[8]);
65
PRMANAPI
extern
int
BkmGetOctreeChildrenList
(
66
BkmBrickMap
brickmap,
// new param!
67
BkmBrickMapNode
node,
68
BkmBrickMapNode
children[8]);
69
PRMANAPI
extern
int
BkmGetVoxelData
(
70
BkmBrickMap
brickmap,
71
BkmBrickMapNode
node,
72
int
imin,
73
int
jmin,
74
int
kmin,
75
int
imax,
76
int
jmax,
77
int
kmax,
78
int
* nvoxels,
79
int
* voxelnumbers,
80
int
* voxelhasdata,
// (redundant, but useful)
81
float
* voxeldata);
82
PRMANAPI
extern
void
BkmCloseBrickMapFile
(
BkmBrickMap
brickmap);
83
84
#ifdef __cplusplus
85
}
86
#endif
87
88
#endif
/* _BRICKMAP_H_ */
BkmGetOctreeChildrenList
PRMANAPI int BkmGetOctreeChildrenList(BkmBrickMap brickmap, BkmBrickMapNode node, BkmBrickMapNode children[8])
BkmCloseBrickMapFile
PRMANAPI void BkmCloseBrickMapFile(BkmBrickMap brickmap)
PRMANAPI
#define PRMANAPI
Definition:
prmanapi.h:111
BkmOpenBrickMapFile
PRMANAPI BkmBrickMap BkmOpenBrickMapFile(char *filename)
BkmBrickMap
void * BkmBrickMap
Definition:
brickmap.h:43
prmanapi.h
BkmGetOctreeChildren
PRMANAPI int BkmGetOctreeChildren(BkmBrickMapNode node, BkmBrickMapNode children[8])
BkmGetVoxelData
PRMANAPI int BkmGetVoxelData(BkmBrickMap brickmap, BkmBrickMapNode node, int imin, int jmin, int kmin, int imax, int jmax, int kmax, int *nvoxels, int *voxelnumbers, int *voxelhasdata, float *voxeldata)
BkmGetOctreeRoots
PRMANAPI int BkmGetOctreeRoots(BkmBrickMap brickmap, BkmBrickMapNode roots[7])
BkmBrickMapNode
void * BkmBrickMapNode
Definition:
brickmap.h:44
BkmGetBrickMapInfo
PRMANAPI int BkmGetBrickMapInfo(BkmBrickMap brickmap, char const *request, void *result)
include
brickmap.h
Generated by
1.8.13