Ricoh InfoPrint Pro C900AFP InfoPrint Manager - Page 104

Output record exit

Page 104 highlights

Note: Only one record can reside in the buffer at any time. eof (Byte 22) An end-of-file (eof) indicator. This indicator is a one-byte character code that specifies whether an eof condition has been encountered. When eof is signaled (eof value='Y'), the last record has already been presented to the input exit, and the input file has been closed. The pointer record is no longer valid. Records cannot be inserted when eof is signaled. These are the only valid values for this parameter: Y Specifies that eof has been encountered. N Specifies that eof has not been encountered. This end-of-file indicator allows the exit program to perform some additional processing at the end of the file. The exit program cannot change this parameter. Output record exit Using the output-record exit, you can modify or ignore the records the line-data transform writes into the output file. The program invoked at this exit is defined by the outexit keyword of the line2afp command. The exit receives control before a record (structured field) is written to the output document file. The exit can request that the record be ignored or processed. The largest record that the exit can process is 32752 bytes, not including the record descriptor word. The exit is not called when the line-data transform is processing resources. This example contains a sample C language header that describes the control block passed to the exit program: typedef struct _OUTEXIT_PARMS /* Parameters for resource record exit */ { char *work; /* Address of 16-byte static work area */ PFATTR *pfattr; /* Address of print file attribute information */ char *record; /* Address of the record to written */ unsigned short recordln; /* Length of the output record */ char request; /* Delete or process the record */ char eof; /* Last call indicator */ }OUTEXIT_PARMS; The address of the control block containing these parameters is passed to the output record exit: work (Bytes 1-4) A pointer to a static, 16-byte memory block. The exit program can use this parameter to save information across calls (for example, pointers to work areas). The 16-byte work area is aligned on a full word boundary and is initialized to binary zeros before the first call. A user-written exit program must provide the code required to manage this work area. pfattr (Bytes 5-8) A pointer to the print file attribute data structure. For more information about the format of this data structure and the information it contains, see "Attributes of the line data input file" on page 89. record (Bytes 9-12) A pointer to the first byte of the output record. The record is in a 32KB 86 InfoPrint Manager for Windows: Procedures

  • 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
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426

Note:
Only one record can reside in the buffer at any time.
eof (Byte 22)
An end-of-file (eof) indicator. This indicator is a one-byte character code
that specifies whether an eof condition has been encountered.
When eof is signaled (
eof value='Y'
), the last record has already been
presented to the input exit, and the input file has been closed. The pointer
record is no longer valid. Records cannot be inserted when eof is signaled.
These are the only valid values for this parameter:
Y
Specifies that eof has been encountered.
N
Specifies that eof has not been encountered.
This end-of-file indicator allows the exit program to perform some additional
processing at the end of the file. The exit program cannot change this parameter.
Output record exit
Using the output-record exit, you can modify or ignore the records the line-data
transform writes into the output file. The program invoked at this exit is defined
by the outexit keyword of the
line2afp
command.
The exit receives control before a record (structured field) is written to the output
document file. The exit can request that the record be ignored or processed. The
largest record that the exit can process is 32752 bytes, not including the record
descriptor word. The exit is not called when the line-data transform is processing
resources.
This example contains a sample C language header that describes the control block
passed to the exit program:
typedef struct _OUTEXIT_PARMS /* Parameters for resource record exit
*/
{
char
*work;
/* Address of 16-byte static work area
*/
PFATTR
*pfattr;
/* Address of print file attribute information */
char
*record;
/* Address of the record to written
*/
unsigned short recordln;
/* Length of the output record
*/
char
request;
/* Delete or process the record
*/
char
eof;
/* Last call indicator
*/
}OUTEXIT_PARMS;
The address of the control block containing these parameters is passed to the
output record exit:
work (Bytes 1–4)
A pointer to a static, 16-byte memory block. The exit program can use this
parameter to save information across calls (for example, pointers to work
areas). The 16-byte work area is aligned on a full word boundary and is
initialized to binary zeros before the first call. A user-written exit program
must provide the code required to manage this work area.
pfattr (Bytes 5–8)
A pointer to the print file attribute data structure. For more information
about the format of this data structure and the information it contains, see
“Attributes of the line data input file” on page 89.
record (Bytes 9–12)
A pointer to the first byte of the output record. The record is in a 32KB
86
InfoPrint Manager for Windows: Procedures