00001
00002
00003
00004
00005
00008
00009 #define _PIN_H_
00012 #include "elektrodef.h"
00015
00016
00017
00020
00021 #define guidPIN (Apin::CI.guid)
00022
00025
00026 enum
00027 {
00028 pinIN,
00029 pinOUT
00030 };
00031
00034
00035 class Apin : public Asurface, public Asection
00036 {
00037 public:
00038 ELIBOBJ
00039
00040 EDLL Apin (char *name, class AeffectBack *eb, int type, int x, int y, int w, int h);
00041 EDLL virtual ~Apin ();
00042
00043 virtual void settings () { }
00044
00045 EDLL int getCountConnect ();
00046
00047 EDLL Apin * getConnectedPin ();
00048 bool isConnected ();
00049
00050 EDLL virtual bool enter ();
00051 EDLL virtual void leave ();
00052
00053
00054
00055 EDLL virtual bool mouse (int x, int y, int state, int event);
00056 virtual bool connected (class Aconnect *connect) { return TRUE; }
00057
00058 class Aeffect *effect;
00059 class Aconnect *connect;
00060 int type;
00061
00062 int number;
00063 class Apin *nextPin;
00064 };
00065
00068
00069 __inline bool Apin::isConnected()
00070 {
00071 return connect!=NULL;
00072 }
00073
00076 #endif //_PIN_H_