/***************************************************************************** * File: EXP_T_object.h * * Object: technique (T) * Subsystem: experiment * Domain: EXP * Repository: exp.ooa * * Notice: * (C) Copyright 1999, 2000 ROX Software, Inc. * All rights reserved. * * Model Compiler: MC3020 V1.3.0 * * Warnings: * !!! THIS IS AN AUTO-GENERATED FILE. PLEASE DO NOT EDIT. !!! ****************************************************************************/ #ifndef EXP_T_OBJECT_H #define EXP_T_OBJECT_H #ifdef __cplusplus extern "C" { #endif #include "e_mechs.h" #include "e_events.h" #include "EXP_objects.h" #include "sys_user_co.h" /***************************************************************************** * Structure: EXP_T_s * Structural representation of application analysis object: * 'technique' (T) ****************************************************************************/ struct EXP_T_s { /* Application analysis OIM attributes */ Escher_UniqueID_t m_T_ID; /* * T_ID */ unsigned int m_start : 2; /* - start */ unsigned int m_end : 6; /* - end */ unsigned int m_number_of_batches : 4; /* - number_of_batches */ unsigned int m_current_batch : 4; /* - current_batch */ /* State machine current state */ Escher_StateNumber_t mc_current_state; }; /***************************************************************************** * Object Factory/Manipulation Methods ****************************************************************************/ extern void EXP_T_FactoryInit( void ); extern EXP_T_s * EXP_T_Create( void ); /* Note: No instance deletion accessor needed */ #define EXP_T_MAX_EXTENT_SIZE 10 extern Escher_ObjectSet_s * pG_EXP_T_extent; /***************************************************************************** * Object Relationship Methods ****************************************************************************/ /***************************************************************************** * Enumeration of state model states for object *****************************************************************************/ #define EXP_T_STATE_1 1 /* State [1]: 'idle' */ #define EXP_T_STATE_2 2 /* State [2]: 'running' */ /***************************************************************************** * Enumeration of state model event numbers *****************************************************************************/ #define EXP_T_EVENT_T1 0 /* 'go' */ #define EXP_T_EVENT_T2 1 /* 'batch_done' */ #define EXP_T_EVENT_T3 2 /* 'stop' */ /***************************************************************************** * State Action Methods ****************************************************************************/ extern void EXP_T_Action_1( EXP_T_s *, const OoaEvent_t * const ); extern void EXP_T_Action_2( EXP_T_s *, const OoaEvent_t * const ); extern void EXP_T_Dispatch( const OoaEvent_t * const ); #ifdef __cplusplus } #endif #endif /* EXP_T_OBJECT_H */