00001 /***************************************************************** 00002 | 00003 | BlueTune - Output Node Interface 00004 | 00005 | (c) 2002-2006 Gilles Boccon-Gibod 00006 | Author: Gilles Boccon-Gibod (bok@bok.net) 00007 | 00008 ****************************************************************/ 00013 #ifndef _BLT_OUTPUT_NODE_H_ 00014 #define _BLT_OUTPUT_NODE_H_ 00015 00016 /*---------------------------------------------------------------------- 00017 | includes 00018 +---------------------------------------------------------------------*/ 00019 #include "Atomix.h" 00020 #include "BltDefs.h" 00021 #include "BltTypes.h" 00022 #include "BltErrors.h" 00023 #include "BltTime.h" 00024 00025 /*---------------------------------------------------------------------- 00026 | types 00027 +---------------------------------------------------------------------*/ 00028 typedef struct { 00029 BLT_Time delay; 00030 } BLT_OutputNodeStatus; 00031 00032 /*---------------------------------------------------------------------- 00033 | BLT_OutputNode Interface 00034 +---------------------------------------------------------------------*/ 00035 ATX_DECLARE_INTERFACE(BLT_OutputNode) 00036 ATX_BEGIN_INTERFACE_DEFINITION(BLT_OutputNode) 00037 BLT_Result (*GetStatus)(BLT_OutputNode* self, 00038 BLT_OutputNodeStatus* status); 00039 ATX_END_INTERFACE_DEFINITION 00040 00041 /*---------------------------------------------------------------------- 00042 | convenience macros 00043 +---------------------------------------------------------------------*/ 00044 #define BLT_OutputNode_GetStatus(object, status) \ 00045 ATX_INTERFACE(object)->GetStatus(object, status) 00046 00047 #endif /* _BLT_OUTPUT_NODE_H_ */