#ifndef CAR_HD_XY_INCLUDED #define CAR_HD_XY_INCLUDED #include #ifdef WIN32 #ifdef DOEXPORT_SCRIPT #define EXPORT_SCRIPT __declspec(dllexport) #else #define EXPORT_SCRIPT #endif #else #define EXPORT_SCRIPT #endif class CAR_HD_XY : public bncs_script_helper { public: CAR_HD_XY(bncs_client_callback *parent, const char *path); virtual ~CAR_HD_XY(); void buttonCallback(buttonNotify *b); int revertiveCallback(revertiveNotify *r); void databaseCallback(revertiveNotify *r); bncs_string parentCallback(parentNotify *p); void timerCallback(int); private: bncs_string m_myParam; bncs_string m_instance; #define MATRIXSIZE 64 // Size of HD video router. int video_id; // BNCS driver id of the video matrix int videosrc; // Video source id in source package int videodest; // Video destination id in destination package int undo_vid_src; // Holds video source number for undo operations int undo_vid_dest; // Holds video destination number for undo operations int take_count; // Used by the take timeout system int videoxystate[MATRIXSIZE + 1]; // Holds the current state of the video matrix bool src_selected; // When set true, indicates we have a valid source selected bool dest_selected; // When set true, indicates we have a valid destination selected bool undo_enabled; bool take_enabled; bool take_timer_active; // Local Methods void checkTake(void); // Function that checks for valid source and destination packages. Enables TAKE if appropriate. void doTake(void); // Implement the TAKE actions void doUndo(void); // Undo last take action void doClear(void); // Clear Selections }; #endif // CAR_HD_XY_INCLUDED