/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* perf720 src/perf/perfagent/usr/samples/perfagent/server/lfiltd.h 1.3 */ /* */ /* */ /* */ /* OBJECT CODE ONLY SOURCE MATERIALS */ /* */ /* COPYRIGHT International Business Machines Corp. 1992,1993 */ /* All Rights Reserved */ /* */ /* The source code for this program is not published or otherwise */ /* divested of its trade secrets, irrespective of what has been */ /* deposited with the U.S. Copyright Office. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)24 1.3 src/perf/perfagent/usr/samples/perfagent/server/lfiltd.h, perfagent, perf720 8/12/96 11:51:08 */ /* * COMPONENT_NAME: (PERFAGENT) - Performance Agent * * FUNCTIONS: Sample program header file * * ORIGINS: 30 * * (C) COPYRIGHT International Business Machines Corp. 1992, 1996 * All Rights Reserved * Licensed Materials - Property of IBM * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. * * NOTICE TO USERS OF THE SOURCE CODE EXAMPLES THE SOURCE CODE EXAMPLES PROVIDED BY IBM ARE ONLY INTENDED TO ASSIST IN THE DEVELOPMENT OF A WORKING SOFTWARE PROGRAM. THE SOURCE CODE EXAMPLES DO NOT FUNCTION AS WRITTEN: ADDITIONAL CODE IS REQUIRED. IN ADDITION, THE SOURCE CODE EXAMPLES MAY NOT COMPILE AND/OR BIND SUCCESSFULLY AS WRITTEN. INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THE SOURCE CODE EXAMPLES, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS, "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOURCE CODE EXAMPLES, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS, IS WITH YOU. SHOULD ANY PART OF THE SOURCE CODE EXAMPLES PROVE DEFECTIVE, YOU (AND NOT IBM OR AN AUTHORIZED RISC System/6000* WORKSTATION DEALER) ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IBM does not warrant that the contents of the source code examples, whether individually or as one or more groups, will meet your requirements or that the source code examples are error-free. IBM may make improvements and/or changes in the source code examples at any time. Changes may be made periodically to the information in the source code examples; these changes may be reported, for the sample device drivers included herein, in new editions of the examples. References in the source code examples to IBM products, programs, or services do not imply that IBM intends to make these available in all countries in which IBM operates. Any reference to an IBM licensed program in the source code examples is not intended to state or imply that only IBM's licensed program may be used. Any functionally equivalent program may be used. * RISC System/6000 is a trademark of International Business Machines Corporation. */ #include #define ASSIGN 257 #define OPER 258 #define LEFTBR 260 #define RGHTBR 261 #define NUMBER 262 #define FLOAT1 263 #define FLOAT2 264 #define FLOAT3 265 #define TARGET 266 #define VARBL 267 #define RAWVAR 268 #define WCMUL 271 #define WCADD 272 #define WCTOP 273 #define WCBOT 274 #define WCCNT 275 #define COMMENT 279 #define DESCR 284 #define EOL 285 /* milliseconds */ #define LINTERVAL 5000 #define MIN_OBS 3 #ifdef _AIX_41 #define lfilter_inp "/usr/samples/perfagent/server/lfilter.cf" #else #define lfilter_inp "/usr/lpp/perfagent/samples/lfilter.cf" #endif #define lfilter_log "/tmp/lfilter.log" #define MAX_FFILE_SIZE 32*1024 typedef enum { novalue, newvalue } value_kind; typedef enum { notype, temp, variable, rawvariable, constant } source_field; typedef enum { nostate, assign1, assign2 } parse_state; typedef enum { novar, var, oper } var_state; struct ResStr { source_field type1; source_field type2; void *source1; /* ->StatVals if type = variable and */ void *source2; /* ->ResStr if type = temp */ char *var1; char *var2; #ifdef _NO_PROTO float (*op)(); #else float (*op)(float, float); #endif unsigned short prec; unsigned short loggings; }; struct LVarStr { struct SpmiStatSet *ssp; struct ResStr *rsp; char *newvar; char *descr; struct LVarStr *next; struct LVarStr *prev; value_kind type; short ix; boolean ready; boolean dumped; };