/*
 * Note: this file originally auto-generated by mib2c using
 *  : mib2c.table_data.conf,v 1.8 2005/07/19 14:52:03 dts12 Exp $
 */
#ifndef MTETRIGGERBOOLEANTABLE_H
#define MTETRIGGERBOOLEANTABLE_H

/*
 * function declarations 
 */
void            init_mteTriggerBooleanTable(void);
Netsnmp_Node_Handler mteTriggerBooleanTable_handler;

/*
 * column number definitions for table mteTriggerBooleanTable 
 */
#define COLUMN_MTETRIGGERBOOLEANCOMPARISON	1
#define COLUMN_MTETRIGGERBOOLEANVALUE		2
#define COLUMN_MTETRIGGERBOOLEANSTARTUP		3
#define COLUMN_MTETRIGGERBOOLEANOBJECTSOWNER	4
#define COLUMN_MTETRIGGERBOOLEANOBJECTS		5
#define COLUMN_MTETRIGGERBOOLEANEVENTOWNER	6
#define COLUMN_MTETRIGGERBOOLEANEVENT		7
#endif                          /* MTETRIGGERBOOLEANTABLE_H */
