File: progu271.htm

package info (click to toggle)
dx 1%3A4.4.4-4
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 49,864 kB
  • sloc: ansic: 365,482; cpp: 156,594; sh: 13,801; java: 10,641; makefile: 2,373; awk: 444; yacc: 327
file content (170 lines) | stat: -rw-r--r-- 5,825 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3//EN">
<HTML><HEAD>
<TITLE>IBM Visualization Data Explorer Programmer&#39;s Reference</TITLE>

<META HTTP-EQUIV="abstract" CONTENT="IBM Visualization Data Explorer
Programmer&#39;s Reference">
<META HTTP-EQUIV="contact" CONTENT="IBM Visualization Data Explorer
(ibmdx@watson.ibm.com)">
<META HTTP-EQUIV="owner" CONTENT="IBM Visualization Data Explorer
(ibmdx@watson.ibm.com)">
<META HTTP-EQUIV="updated" CONTENT="Tue, 16 Sep 1997 ">
<META HTTP-EQUIV="review" CONTENT="Fri, 14 Aug 1998 ">

<META HTTP-EQUIV="keywords" CONTENT="GRAPHICS VISUALIZATION VISUAL PROGRAM DATA
MINING">
<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
</HEAD><BODY BGCOLOR="#FFFFFF">

<A NAME="Top_Of_Page"></A>
<H1>IBM Visualization Data Explorer Programmer&#39;s Reference</H1>
<B>&#91; <A HREF="#Bot_Of_Page">Bottom of Page</A> &#124; <A
HREF="progu270.htm">Previous Page</A> &#124; <A HREF="progu272.htm">Next
Page</A> &#124; <A HREF="../proguide.htm#ToC">Table of Contents</A> &#124; <A
HREF="progu097.htm#PToC20">Partial Table of Contents</A> &#124; <A
HREF="progu344.htm#HDRINDEX_START">Index</A> &#93;</B><HR><P>
<H3><A NAME="HDRDXPP" HREF="progu097.htm#PToC_365">DXProcessParts</A></H3>
<A NAME="IDX1959"></A>
<A NAME="IDX1960"></A>
<P><STRONG>Function</STRONG>
<P>
Applies a function to every constituent Field (part) of a specified
Object.
<P><STRONG>Syntax</STRONG>
<BR>
<TT><STRONG><BR>
&#35;include &lt;dx/dx.h&gt;<BR>
<P><BR>
Object DXProcessParts(Object object, Field (*process)(Field, Pointer, int),<BR>
                      Pointer args, int size, int copy, int preserve)<BR>
</STRONG></TT><BR>
<P><STRONG>Functional Details</STRONG>
<P>
<P>
If the input
<TT><STRONG>
Object
</STRONG></TT>
is a Field, this
routine returns the result of the
<TT><STRONG>
process
</STRONG></TT>
function on that Field.
<P>
If the input
<TT><STRONG>
Object
</STRONG></TT>
is a Group and
<TT><STRONG>
copy
</STRONG></TT>
is 1, this routine recursively makes a copy of the Group and
all subgroups.  In this case, the
order of the Fields in the Groups is preserved if
<TT><STRONG>
preserve
</STRONG></TT>
is 1.  If this is not required, set
<TT><STRONG>
preserve
</STRONG></TT>
to 0 and a more efficient
traversal algorithm will be used.
<P>
If the input
<TT><STRONG>
Object
</STRONG></TT>
is a Group and
<TT><STRONG>
copy
</STRONG></TT>
is 0, it
operates directly on the Groups of the input
<TT><STRONG>object</STRONG></TT>.
<P>
In either case, for every Field
<TT><STRONG>
f
</STRONG></TT>
that is a member of a Group,
it makes a call of the form
<TT><STRONG>process(f</STRONG></TT>, <TT><STRONG>args</STRONG></TT>,
<TT><STRONG>size)</STRONG></TT>
and places
the result of that call in the output in place of
<TT><STRONG>f</STRONG></TT>.  The
<TT><STRONG>
process
</STRONG></TT>
function is intended to return a Field which is the processed
version of input Field
<TT><STRONG>f</STRONG></TT>.
<P>
Regardless of the value of the
<TT><STRONG>
copy
</STRONG></TT>
parameter, the Field passed to the
<TT><STRONG>
process
</STRONG></TT>
function is the Field from the original Object and not a copy.
<P>
The <TT><STRONG>size</STRONG></TT> parameter specifies the size of the block
pointed to by <TT><STRONG>args</STRONG></TT>.
If <TT><STRONG>size</STRONG></TT> is nonzero, it makes a copy of the
argument block and places it in global memory before
passing it to <TT><STRONG>process</STRONG></TT>.
The argument must be in global memory because
<TT><STRONG>DXProcessParts</STRONG></TT> may run
in parallel;
however, if the pointer passed is, for example, just a pointer to an
Object that is already in global memory, then
<TT><STRONG>size</STRONG></TT> can be given as 0.
<TT><STRONG>args</STRONG></TT> should not contain pointers to local memory.
<P>
If the <TT><STRONG>process</STRONG></TT> function returns
<TT><STRONG>NULL</STRONG></TT>, and <TT><STRONG>preserve</STRONG></TT>
is 1 or the Field was part of a Series Group or was the
entire input Object, the <TT><STRONG>NULL</STRONG></TT>
return value is replaced with an empty Field.
<P><STRONG>Return Value</STRONG>
<P>
Returns the Object, a copy of the Object, or a processed version of it,
depending on the parameters; otherwise, it returns
<TT><STRONG>NULL</STRONG></TT> and sets an error code.
<P><STRONG>See Also</STRONG>
<P>
<TT><STRONG>
<A HREF="progu191.htm#HDRDXGP">DXGetPart</A>,
<A HREF="progu192.htm#HDRDXGPC">DXGetPartClass</A>,
<A HREF="progu320.htm#HDRDXSP">DXSetPart</A>
</STRONG></TT>
<P>
<A HREF="progu045.htm#HDRPRTS">"Parts"</A>.
<P><P>
<P><HR><B>&#91; <A HREF="#Top_Of_Page">Top of Page</A> &#124; <A
HREF="progu270.htm">Previous Page</A> &#124; <A HREF="progu272.htm">Next
Page</A> &#124; <A HREF="../proguide.htm#ToC">Table of Contents</A> &#124; <A
HREF="progu097.htm#PToC20">Partial Table of Contents</A> &#124; <A
HREF="progu344.htm#HDRINDEX_START">Index</A> &#93;</B> <br><b>&#91;<a
href="../allguide.htm">Data Explorer Documentation</a>&nbsp;&#124;&nbsp;<a
href="../qikguide.htm">QuickStart Guide</a>&nbsp;&#124;&nbsp;<a
href="../usrguide.htm">User&#39;s Guide</a>&nbsp;&#124;&nbsp;<a
href="../refguide.htm">User&#39;s Reference</a>&nbsp;&#124;&nbsp;<a
href="../proguide.htm">Programmer&#39;s Reference</a>&nbsp;&#124;&nbsp;<a
href="../insguide.htm">Installation and Configuration

Guide</a>&nbsp;&#93;</b><br><p><b>&#91;<a
href="http://www.research.ibm.com/dx">Data Explorer Home
Page</a>&#93;</b><p><HR ALIGN=LEFT WIDTH=600><b>&#91;<A
HREF="http://www.ibm.com/">IBM Home Page</A>&nbsp;&#124;&nbsp;<A
HREF="http://www.ibm.com/Orders/">Order</A>&nbsp;&#124;&nbsp;<A
HREF="http://www.ibm.com/Search/">Search</A>&nbsp;&#124;&nbsp;<A
HREF="http://www.ibm.com/Assist/">Contact IBM</A>&nbsp;&#124;&nbsp;<A
HREF="http://www.ibm.com/Legal/">Legal</A>&nbsp;&#93;</b><hr><p>
<A NAME="Bot_Of_Page"></A>
</BODY></HTML>