#!F-adobe-helvetica-medium-r-normal--18* #!N #!N #!Rdxpp DXProcessParts #!N #!N Function #!N #!N Applies a function to every constituent Field (part) of a specified Object. #!N #!N Syntax #!N #!F-adobe-times-bold-r-normal--18* #include <dx/dx.h> Object DXProcessParts(Object object, Field (*process)(Field, Pointer, int), Pointer args, int size, int copy, int preserve) #!EF #!N #!N Functional Details #!N #!N #!N If the input #!F-adobe-times-bold-r-normal--18* Object #!EF is a Field, this routine returns the result of the #!F-adobe-times-bold-r-normal--18* process #!EF function on that Field. #!N #!N If the input #!F-adobe-times-bold-r-normal--18* Object #!EF is a Group and #!F-adobe-times-bold-r-normal--18* copy #!EF 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 #!F-adobe-times-bold-r-normal--18* preserve #!EF is 1. If this is not required, set #!F-adobe-times-bold-r-normal--18* preserve #!EF to 0 and a more efficient traversal algorithm will be used. #!N #!N If the input #!F-adobe-times-bold-r-normal--18* Object #!EF is a Group and #!F-adobe-times-bold-r-normal--18* copy #!EF is 0, it operates directly on the Groups of the input #!F-adobe-times-bold-r-normal--18* object #!EF . #!N #!N In either case, for every Field #!F-adobe-times-bold-r-normal--18* f #!EF that is a member of a Group, it makes a call of the form #!F-adobe-times-bold-r-normal--18* process(f #!EF , #!F-adobe-times-bold-r-normal--18* args #!EF , #!F-adobe-times-bold-r-normal--18* size) #!EF and places the result of that call in the output in place of #!F-adobe-times-bold-r-normal--18* f #!EF . The #!F-adobe-times-bold-r-normal--18* process #!EF function is intended to return a Field which is the processed version of input Field #!F-adobe-times-bold-r-normal--18* f #!EF . #!N #!N Regardless of the value of the #!F-adobe-times-bold-r-normal--18* copy #!EF parameter, the Field passed to the #!F-adobe-times-bold-r-normal--18* process #!EF function is the Field from the original Object and not a copy. #!N #!N The #!F-adobe-times-bold-r-normal--18* size #!EF parameter specifies the size of the block pointed to by #!F-adobe-times-bold-r-normal--18* args #!EF . If #!F-adobe-times-bold-r-normal--18* size #!EF is nonzero, it makes a copy of the argument block and places it in global memory before passing it to #!F-adobe-times-bold-r-normal--18* process #!EF . The argument must be in global memory because #!F-adobe-times-bold-r-normal--18* DXProcessParts #!EF 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 #!F-adobe-times-bold-r-normal--18* size #!EF can be given as 0. #!F-adobe-times-bold-r-normal--18* args #!EF should not contain pointers to local memory. #!N #!N If the #!F-adobe-times-bold-r-normal--18* process #!EF function returns #!F-adobe-times-bold-r-normal--18* NULL #!EF , and #!F-adobe-times-bold-r-normal--18* preserve #!EF is 1 or the Field was part of a Series Group or was the entire input Object, the #!F-adobe-times-bold-r-normal--18* NULL #!EF return value is replaced with an empty Field. #!N #!N Return Value #!N #!N Returns the Object, a copy of the Object, or a processed version of it, depending on the parameters; otherwise, it returns #!F-adobe-times-bold-r-normal--18* NULL #!EF and sets an error code. #!N #!N See Also #!N #!N #!F-adobe-times-bold-r-normal--18* #!Ldxgp,dxall1256 h DXGetPart #!EL , #!Ldxgpc,dxall1257 h DXGetPartClass #!EL , #!Ldxsp,dxall1385 h DXSetPart #!EL #!EF #!N #!N #!Lprts,dxall1068 h Parts #!EL . #!N #!N #!N #!F-adobe-times-medium-i-normal--18* Next Topic #!EF #!N #!N #!Ldxptvc,dxall1337 h DXPt, DXVec #!EL #!N #!F-adobe-times-medium-i-normal--18* #!N
Generated by dwww version 1.15 on Sat Jun 22 12:47:33 CEST 2024.