SCPattern moved out of GLucose
[SugarCubes.git] / DanKaminsky.pde
index 59bde733721a99feaacfc1f495b482896a6bdd2c..c94b57396b07ccb4ba542248b3af31537f82b5d3 100644 (file)
@@ -3,15 +3,15 @@ class GenericController {
     public void RotateKnob(int type, int num, float val){
       LXParameter p = null;
       if(type==0) {
-        p = glucose.patternKnobs.get(num);
+        p = getPattern().getParameters().get(num);
         if(p!=null) { p.setValue(val); }
       }
       if(type==1) {
-        p = glucose.transitionKnobs.get(num);
+        p = glucose.getSelectedTransition().getParameters().get(num);
         if(p!=null) { p.setValue(val); }
       }
       if(type==2) {
-        p = glucose.effectKnobs.get(num);
+        p = glucose.getSelectedEffect().getParameters().get(num);
         if(p!=null) { p.setValue(val); }
       }
     }
@@ -38,9 +38,9 @@ OscP5 listener;
 //  }
 //  if(cc.getCC()==1){
 //    for(int i=0; i<16; i++){
-//      if(noteState[i] && i<8)  { LXParameter p = glucose.patternKnobs.get(i); p.setValue(cc.getValue()/127.0); }
-//      else if(noteState[i] && i<12) { LXParameter p = glucose.transitionKnobs.get(i-8); p.setValue(cc.getValue()/127.0); }
-//      else if(noteState[i] && i<16) { LXParameter p = glucose.effectKnobs.get(i-12); p.setValue(cc.getValue()/127.0); }
+//      if(noteState[i] && i<8)  { LXParameter p = glucose.getPattern().getParameters().get(i); p.setValue(cc.getValue()/127.0); }
+//      else if(noteState[i] && i<12) { LXParameter p = glucose.getSelectedTransition().getParameters().get(i-8); p.setValue(cc.getValue()/127.0); }
+//      else if(noteState[i] && i<16) { LXParameter p = glucose.getSelectedEffect().getParameters().get(i-12); p.setValue(cc.getValue()/127.0); }
 //    }
 //  }
 //}
@@ -75,28 +75,28 @@ OscP5 listener;
 //
 
 
-class ObjectMuckerEffect extends SCEffect {
-  ObjectMuckerEffect(GLucose glucose) {
-    super(glucose);
+class ObjectMuckerEffect extends LXEffect {
+  ObjectMuckerEffect(LX lx) {
+    super(lx);
   }
-  public void doApply(int[] colors){
+  public void apply(int[] colors){
     /*for(Strip s: model.strips){
       for(int i=0; i<s.points.size(); i++){
          int index = s.points.get(i).index;
          color c = colors[index];
-         colors[index] = color((i*22.5), saturation(c), brightness(c));
+         colors[index] = lx.hsb((i*22.5), saturation(c), brightness(c));
       }
     }*/
   }
 }
 
-class BlendFrames extends SCEffect {
+class BlendFrames extends LXEffect {
   int fcount;
   int frames[][];
   int maxfbuf;
   int blendfactor;
-  BlendFrames(GLucose glucose) {
-    super(glucose);
+  BlendFrames(LX lx) {
+    super(lx);
     maxfbuf = 30;
     blendfactor=30;
     fcount=0;
@@ -105,7 +105,7 @@ class BlendFrames extends SCEffect {
        frames[i] = new int[model.points.size()];       
     }
   }
-  public void doApply(int[] colors) {
+  public void apply(int[] colors) {
     if(fcount<maxfbuf){
       for(int i=0; i<colors.length; i++){
         frames[(maxfbuf-1)-fcount][i]=colors[i];
@@ -146,7 +146,7 @@ import oscP5.*;
 
 
 abstract class OSCPattern extends SCPattern {
-  public OSCPattern(GLucose glucose){super(glucose);}
+  public OSCPattern(LX lx){super(lx);}
   public abstract void oscEvent(OscMessage msg);
 }
 
@@ -160,8 +160,8 @@ class Ball {
 
 class OSC_Balls extends OSCPattern {
   Ball[] balls;
-  public OSC_Balls(GLucose glucose){
-    super(glucose);
+  public OSC_Balls(LX lx){
+    super(lx);
     balls = new Ball[20];
     for(int i=0; i<balls.length; i++) { balls[i] = new Ball(); }    
   }
@@ -173,11 +173,11 @@ class OSC_Balls extends OSCPattern {
     balls[ballnum].y = msg.get(1).floatValue();    
   }
   
-  void run(int deltaMs){
-    for(Point p: model.points){ colors[p.index]=0; }
+  void run(double deltaMs){
+    for(LXPoint p: model.points){ colors[p.index]=0; }
     for(int i=1; i<balls.length; i++){
       if(millis() - balls[i].lastSeen < 1000) {
-        for(Point p: model.points){
+        for(LXPoint p: model.points){
           int x = int(balls[i].x * 255.0);
           int y = int(balls[i].y * 127.0);
           if(p.x < x+4 && p.x > x-4 && p.y < y+4 && p.y > y-4) { colors[p.index] = #FF0000; } 
@@ -193,13 +193,13 @@ import processing.serial.*;
 /*class ScreenScrape extends SCPattern {
   PImage pret;
   ScreenShot ss;
-  public ScreenScrape(GLucose glucose) {
-    super(glucose);
+  public ScreenScrape(LX lx) {
+    super(lx);
     System.loadLibrary("ScreenShot");
     pret = new PImage(8, 128, ARGB);
     ss = new ScreenShot();
   }
-  void run(int deltaMs){
+  void run(double deltaMs){
      int x=(1366/2)+516;
      int y=768-516;
      int w=8;
@@ -207,62 +207,9 @@ import processing.serial.*;
      pret.pixels = ss.getScreenShotJNI2(x, y, w, h);
      //for(int i=0; i<px.length; i++){ pret.pixels[i] = px[i]; }
      //println(pret.get(10,10));
-     for(Point p: model.points){
+     for(LXPoint p: model.points){
        colors[p.index] = pret.get((int(p.x)/8)*8, 128-int(p.y));
      }     
   }
 }*/
 
-List<LXParameter> gparams;
-
-class DualBlender extends SCEffect {
-  int lastSeen;
-  BasicParameter p1 = new BasicParameter("p1", 0);
-  BasicParameter p2 = new BasicParameter("p2", 0);  
-  BasicParameter p3 = new BasicParameter("p3", 0);
-  BasicParameter p4 = new BasicParameter("p4", 0);
-  BasicParameter p5 = new BasicParameter("p5", 0);  
-  BasicParameter p6 = new BasicParameter("p6", 0);
-  BasicParameter p7 = new BasicParameter("p7", 0);
-  BasicParameter p8 = new BasicParameter("p8", 0);  
-  DualBlender(GLucose glucose){
-    super(glucose);
-    gparams = gplay.getParameters();
-    addParameter(p1);
-    addParameter(p2);
-    addParameter(p3);
-    addParameter(p4);
-    addParameter(p5);
-    addParameter(p6);
-    addParameter(p7);
-    addParameter(p8);
-
-    lastSeen=millis();    
-  }
-  
-  void onParameterChanged(LXParameter p){
-    if(p==p1) { gparams.get(0).setValue(p.getValuef()); }
-    if(p==p2) { gparams.get(1).setValue(p.getValuef()); }
-    if(p==p3) { gparams.get(2).setValue(p.getValuef()); }
-    if(p==p4) { gparams.get(3).setValue(p.getValuef()); }
-    if(p==p5) { gparams.get(4).setValue(p.getValuef()); }
-    if(p==p6) { gparams.get(5).setValue(p.getValuef()); }
-    if(p==p7) { gparams.get(6).setValue(p.getValuef()); }
-    if(p==p8) { gparams.get(7).setValue(p.getValuef()); }    
-  }
-  
-  void doApply(int[] colors){
-    if(doDual==true){
-      //gplay.onActive();
-      gplay.go(millis()-lastSeen);
-      lastSeen=millis();
-      int[] pcolors = gplay.getColors();
-      for(int i=0; i<colors.length; i++){
-        colors[i]=blendColor(colors[i],pcolors[i], MULTIPLY);
-      }      
-    } else {}//gplay.onInactive(); }
-  }
-  
-  
-}
-