Tizen 2.1 base
[sdk/emulator/qemu.git] / gl / mesa / src / glu / sgi / libnurbs / nurbtess / sampleCompBot.h
1 /*
2  * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
3  * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice including the dates of first publication and
13  * either this permission notice or a reference to
14  * http://oss.sgi.com/projects/FreeB/
15  * shall be included in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20  * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
21  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
22  * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23  * SOFTWARE.
24  *
25  * Except as contained in this notice, the name of Silicon Graphics, Inc.
26  * shall not be used in advertising or otherwise to promote the sale, use or
27  * other dealings in this Software without prior written authorization from
28  * Silicon Graphics, Inc.
29  */
30 /*
31 */
32
33 #ifndef _SAMPLECOMPBOT_H
34 #define _SAMPLECOMPBOT_H
35
36 #include "sampleMonoPoly.h"
37
38 void findBotLeftSegment(vertexArray* leftChain, 
39                         Int leftEnd,
40                         Int leftCorner,
41                         Real u,
42                         Int& ret_index_mono,
43                         Int& ret_index_pass);
44
45 void findBotRightSegment(vertexArray* rightChain, 
46                          Int rightEnd,
47                          Int rightCorner,
48                          Real u,
49                          Int& ret_index_mono,
50                          Int& ret_index_pass);
51
52
53 void sampleBotRightWithGridLinePost(Real* botVertex,
54                                     vertexArray* rightChain,
55                                     Int rightEnd,
56                                     Int segIndexMono,
57                                     Int segIndexPass,
58                                     Int rightCorner,
59                                     gridWrap* grid,
60                                     Int gridV,
61                                     Int leftU,
62                                     Int rightU,
63                                     primStream* pStream);
64
65
66 void sampleBotRightWithGridLine(Real* botVertex, 
67                                 vertexArray* rightChain,
68                                 Int rightEnd,
69                                 Int rightCorner,
70                                 gridWrap* grid,
71                                 Int gridV,
72                                 Int leftU,
73                                 Int rightU,
74                                 primStream* pStream);
75
76
77 void sampleBotLeftWithGridLinePost(Real* botVertex,
78                                    vertexArray* leftChain,
79                                    Int leftEnd,
80                                    Int segIndexMono,
81                                    Int segIndexPass,
82                                    Int leftCorner,
83                                    gridWrap* grid,
84                                    Int gridV,
85                                    Int leftU, 
86                                    Int rightU,
87                                    primStream* pStream);
88
89
90 void sampleBotLeftWithGridLine(Real* botVertex,
91                                vertexArray* leftChain,
92                                Int leftEnd,
93                                Int leftCorner,
94                                gridWrap* grid,
95                                Int gridV,
96                                Int leftU,
97                                Int rightU,
98                                primStream* pStream);
99
100
101 Int findBotSeparator(vertexArray* leftChain,
102                      Int leftEnd,
103                      Int leftCorner,
104                      vertexArray* rightChain,
105                      Int rightEnd,
106                      Int rightCorner,
107                      Int& ret_sep_left,
108                      Int& ret_sep_right);
109
110 void sampleCompBot(Real* botVertex,
111                    vertexArray* leftChain,
112                    Int leftEnd,
113                    vertexArray* rightChain,
114                    Int rightEnd,
115                    gridBoundaryChain* leftGridChain,
116                    gridBoundaryChain* rightGridChain,
117                    Int gridIndex,
118                    Int down_leftCornerWhere,
119                    Int down_leftCornerIndex,
120                    Int down_rightCornerWhere,
121                    Int down_rightCornerIndex,
122                    primStream* pStream);
123
124 void sampleCompBotSimple(Real* botVertex,
125                    vertexArray* leftChain,
126                    Int leftEnd,
127                    vertexArray* rightChain,
128                    Int rightEnd,
129                    gridBoundaryChain* leftGridChain,
130                    gridBoundaryChain* rightGridChain,
131                    Int gridIndex,
132                    Int down_leftCornerWhere,
133                    Int down_leftCornerIndex,
134                    Int down_rightCornerWhere,
135                    Int down_rightCornerIndex,
136                    primStream* pStream);
137
138 #endif