Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

table.h

Go to the documentation of this file.
00001 
00002 
00003 //
00004 //      table.H                                 (c)     YoY'00                                          WEB: www.aestesis.org
00005 //
00008 #ifndef                                                 _TABLE_H_
00009 #define                                                 _TABLE_H_
00012 #include                                                "elektrodef.h"
00013 #include                                                "thread.h"
00016 
00017 #define                                                 guidtable                                               (Atable::CI.guid)
00018 #define                                                 guidtableFront                                  (AtableFront::CI.guid)
00019 #define                                                 guidtableBack                                   (AtableBack::CI.guid)
00020 
00023 
00024 #define                                                 MAXEFFECTINFO                                   1024
00025 #define                                                 MAXEFFECT                                               1024
00026 #define                                                 MAXCONTROL                                              MAXEFFECT*16
00027 
00030 
00031 class Atable : public Aobject, public Athread
00032 {
00033 public:
00034         ELIBOBJ
00035 
00036         EDLL                                            Atable                                                  (char *name, Aobject *l, int x, int y, int w, int h);
00037         EDLL virtual                            ~Atable                                                 ();
00038 
00039         EDLL virtual void                       paint                                                   (Abitmap *);
00040         EDLL virtual bool                       notify                                                  (Anode *o, int event, dword p=0);
00041         EDLL virtual bool                       size                                                    (int w, int h);
00042 
00043         EDLL virtual bool                       add                                                             (class Aplugz *ei);
00044 
00045         EDLL virtual bool                       add                                                             (class Apin *p);
00046         EDLL virtual bool                       del                                                             (class Apin *p);
00047 
00048         EDLL virtual bool                       add                                                             (class Aconnect *c);
00049         EDLL virtual bool                       del                                                             (class Aconnect *c);
00050 
00051         EDLL virtual bool                       del                                                             (class Aeffect *e);
00052 
00053         EDLL void                                       arrange                                                 ();
00054         EDLL void                                       order                                                   ();
00055         EDLL void                                       clear                                                   ();
00056 
00057         EDLL bool                                       stop                                                    ();
00058         EDLL virtual void                       run                                                             ();
00059 
00060         EDLL virtual int                        getTime                                                 ();
00061 
00062         EDLL virtual void                       settings                                                ();
00063 
00064         EDLL bool                                       save                                                    (Afile *f);
00065         EDLL bool                                       load                                                    (Afile *f);
00066 
00067 
00068         EDLL bool                                       add                                                             (class Acontrol *c);
00069         EDLL void                                       del                                                             (class Acontrol *c);
00070         EDLL bool                                       record                                                  (class Acontrol *c, int ctrl, int value);
00071 
00072         // video
00073 
00074         int                                                     bpmPhase;
00075         int                                                     bpmFreq;
00076         int                                                     videoW;
00077         int                                                     videoH;
00078         int                                                     frameRate;
00079         bool                                            render;
00080         bool                                            recording;
00081 
00082         class Aitem                                     *plugz;
00083 
00084         char                                            rootdir[MAX_PATH];
00085 
00086         // private
00087 
00088         bool                                            test                                                    (class Aeffect *e0, class Aeffect *e1);
00089 
00090 
00091         class Aitem                                     *effectItems;
00092         class AeffectInfo                       *effectInfo[MAXEFFECTINFO];
00093         int                                                     nbEffectInfo;
00094         class Aeffect                           *effect[MAXEFFECT];
00095         int                                                     nbEffect;
00096         class Aeffect                           *effectOrder[MAXEFFECT];
00097         int                                                     nbEffectOrder;
00098         class Acontrol                          *control[MAXCONTROL];
00099         int                                                     nbControl;
00100 
00101         class Apin                                      *pins;
00102         class Aconnect                          *connects;
00103 
00104         int                                                     nbPins;
00105         int                                                     idEffect;
00106 
00107         class Aobject                           *layer;
00108         class AtableFront                       *front;
00109         class AtableBack                        *back;
00110         class AtableSelect                      *select;
00111         class Apattern                          *pattern;
00112 
00113         class Amapping                          *mapping;
00114 
00115         Asection                                        synchronize;
00116         bool                                            running;
00117         int                                                     timeStart;
00118         int                                                     timeCurrent;
00119 
00120 };
00121 
00124 
00125 class AtableFront : public Aobject
00126 {
00127 public:
00128         ELIBOBJ
00129 
00130         EDLL                                            AtableFront                                             (char *name, Aobject *l, Atable *t, int x, int y, int w, int h);
00131         EDLL virtual                            ~AtableFront                                    ();
00132 
00133         EDLL virtual bool                       notify                                                  (Anode *o, int event, dword p=0);
00134         EDLL virtual bool                       mouse                                                   (int x, int y, int state, int event);
00135 
00136         int                                                     wy,ly;
00137         bool                                            bac;
00138 
00139         Atable                                          *table;
00140 };
00141 
00144 
00145 class AtableBack : public Aobject
00146 {
00147 public:
00148         ELIBOBJ
00149 
00150         EDLL                                            AtableBack                                              (char *name, Aobject *l, Atable *t, int x, int y, int w, int h);
00151         EDLL virtual                            ~AtableBack                                             ();
00152 
00153         EDLL virtual bool                       notify                                                  (Anode *o, int event, dword p=0);
00154         EDLL virtual bool                       mouse                                                   (int x, int y, int state, int event);
00155         EDLL virtual void                       update                                                  (Abitmap *b);
00156 
00157         int                                                     wy,ly;
00158         bool                                            bac;
00159 
00160         Atable                                          *table;
00161 
00162 // connect mode
00163         Apin                                            *fromPin;
00164         int                                                     fromX,fromY;
00165         Apin                                            *toPin;
00166         int                                                     toX,toY;
00167 
00168         void                                            drawConnects                                    (Abitmap *b);
00169 };
00170 
00173 #endif                                                  //_TABLE_H

Generated on Tue Nov 20 10:21:26 2001 for elektronika plugz SDK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001