Skip to content

Commit 3b1a729

Browse files
committed
Processing_api.h: use namespace Processing + state accessors only, zero maintenance
1 parent adfed6a commit 3b1a729

1 file changed

Lines changed: 4 additions & 85 deletions

File tree

src/Processing_api.h

Lines changed: 4 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
// Processing_api.h
22
// Included in user-defined classes that don't inherit from PApplet.
3-
// Provides sketch state accessors and drawing forwarders via g_papplet.
3+
// Brings all Processing free functions into scope via using directive.
4+
// Sketch state variables (width, height, mouseX, etc.) are accessible
5+
// through the inline accessors below.
46
#pragma once
57
#include "Processing.h"
68
#include <string>
79

810
using namespace ::Processing;
911

1012
// ── Sketch state accessors ────────────────────────────────────────────────────
13+
// These expose PApplet member variables as free functions for hoisted classes.
1114
inline int width() { return PApplet::g_papplet ? PApplet::g_papplet->logicalW : 0; }
1215
inline int height() { return PApplet::g_papplet ? PApplet::g_papplet->logicalH : 0; }
1316
inline float mouseX() { return PApplet::g_papplet ? PApplet::g_papplet->mouseX : 0.f; }
@@ -29,87 +32,3 @@ inline bool isKeyDown(int k) {
2932
if(!PApplet::g_papplet||k<0||k>=256) return false;
3033
return PApplet::g_papplet->keysDown[k];
3134
}
32-
33-
// ── Drawing forwarders ────────────────────────────────────────────────────────
34-
// These are needed because Processing.h free functions are in namespace
35-
// Processing, but hoisted classes need unqualified access.
36-
// Note: random() is NOT forwarded here to avoid shadowing stdlib random().
37-
// Use ::Processing::random() or PApplet::g_papplet->random() directly.
38-
inline void pushMatrix() { if(PApplet::g_papplet) PApplet::g_papplet->pushMatrix(); }
39-
inline void popMatrix() { if(PApplet::g_papplet) PApplet::g_papplet->popMatrix(); }
40-
inline void push() { if(PApplet::g_papplet) PApplet::g_papplet->push(); }
41-
inline void pop() { if(PApplet::g_papplet) PApplet::g_papplet->pop(); }
42-
inline void pushStyle() { if(PApplet::g_papplet) PApplet::g_papplet->pushStyle(); }
43-
inline void popStyle() { if(PApplet::g_papplet) PApplet::g_papplet->popStyle(); }
44-
inline void beginShape(int k=-1){ if(PApplet::g_papplet) PApplet::g_papplet->beginShape(k); }
45-
inline void endShape(int m=0) { if(PApplet::g_papplet) PApplet::g_papplet->endShape(m); }
46-
inline void vertex(float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->vertex(x,y); }
47-
inline void vertex(float x,float y,float z) { if(PApplet::g_papplet) PApplet::g_papplet->vertex(x,y,z); }
48-
inline void translate(float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->translate(x,y); }
49-
inline void translate(float x,float y,float z) { if(PApplet::g_papplet) PApplet::g_papplet->translate(x,y,z); }
50-
inline void rotate(float a) { if(PApplet::g_papplet) PApplet::g_papplet->rotate(a); }
51-
inline void rotateX(float a) { if(PApplet::g_papplet) PApplet::g_papplet->rotateX(a); }
52-
inline void rotateY(float a) { if(PApplet::g_papplet) PApplet::g_papplet->rotateY(a); }
53-
inline void rotateZ(float a) { if(PApplet::g_papplet) PApplet::g_papplet->rotateZ(a); }
54-
inline void scale(float s) { if(PApplet::g_papplet) PApplet::g_papplet->scale(s); }
55-
inline void scale(float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->scale(x,y); }
56-
inline void fill(float g) { if(PApplet::g_papplet) PApplet::g_papplet->fill(g); }
57-
inline void fill(float r,float g,float b) { if(PApplet::g_papplet) PApplet::g_papplet->fill(r,g,b); }
58-
inline void fill(float r,float g,float b,float a){ if(PApplet::g_papplet) PApplet::g_papplet->fill(r,g,b,a); }
59-
inline void fill(float g,float a) { if(PApplet::g_papplet) PApplet::g_papplet->fill(g,a); }
60-
inline void fill(color c) { if(PApplet::g_papplet) PApplet::g_papplet->fill(c); }
61-
inline void noFill() { if(PApplet::g_papplet) PApplet::g_papplet->noFill(); }
62-
inline void stroke(float g) { if(PApplet::g_papplet) PApplet::g_papplet->stroke(g); }
63-
inline void stroke(float r,float g,float b) { if(PApplet::g_papplet) PApplet::g_papplet->stroke(r,g,b); }
64-
inline void stroke(float r,float g,float b,float a){ if(PApplet::g_papplet) PApplet::g_papplet->stroke(r,g,b,a); }
65-
inline void stroke(float g,float a) { if(PApplet::g_papplet) PApplet::g_papplet->stroke(g,a); }
66-
inline void stroke(color c) { if(PApplet::g_papplet) PApplet::g_papplet->stroke(c); }
67-
inline void noStroke() { if(PApplet::g_papplet) PApplet::g_papplet->noStroke(); }
68-
inline void strokeWeight(float w) { if(PApplet::g_papplet) PApplet::g_papplet->strokeWeight(w); }
69-
inline void background(float g) { if(PApplet::g_papplet) PApplet::g_papplet->background(g); }
70-
inline void background(float r,float g,float b) { if(PApplet::g_papplet) PApplet::g_papplet->background(r,g,b); }
71-
inline void background(float r,float g,float b,float a){ if(PApplet::g_papplet) PApplet::g_papplet->background(r,g,b,a); }
72-
inline void background(color c) { if(PApplet::g_papplet) PApplet::g_papplet->background(c); }
73-
inline void point(float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->point(x,y); }
74-
inline void line(float x1,float y1,float x2,float y2){ if(PApplet::g_papplet) PApplet::g_papplet->line(x1,y1,x2,y2); }
75-
inline void line(float x1,float y1,float z1,float x2,float y2,float z2){ if(PApplet::g_papplet) PApplet::g_papplet->line(x1,y1,z1,x2,y2,z2); }
76-
inline void rect(float x,float y,float w,float h){ if(PApplet::g_papplet) PApplet::g_papplet->rect(x,y,w,h); }
77-
inline void rect(float x,float y,float w,float h,float r){ if(PApplet::g_papplet) PApplet::g_papplet->rect(x,y,w,h,r); }
78-
inline void ellipse(float x,float y,float w,float h){ if(PApplet::g_papplet) PApplet::g_papplet->ellipse(x,y,w,h); }
79-
inline void circle(float x,float y,float d) { if(PApplet::g_papplet) PApplet::g_papplet->circle(x,y,d); }
80-
inline void triangle(float x1,float y1,float x2,float y2,float x3,float y3){ if(PApplet::g_papplet) PApplet::g_papplet->triangle(x1,y1,x2,y2,x3,y3); }
81-
inline void arc(float x,float y,float w,float h,float s,float e){ if(PApplet::g_papplet) PApplet::g_papplet->arc(x,y,w,h,s,e); }
82-
inline void arc(float x,float y,float w,float h,float s,float e,int m){ if(PApplet::g_papplet) PApplet::g_papplet->arc(x,y,w,h,s,e,m); }
83-
inline void image(PImage* img,float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->image(img,x,y); }
84-
inline void image(PImage* img,float x,float y,float w,float h){ if(PApplet::g_papplet) PApplet::g_papplet->image(img,x,y,w,h); }
85-
inline void text(const ::std::string& s,float x,float y){ if(PApplet::g_papplet) PApplet::g_papplet->text(s,x,y); }
86-
inline void text(int v,float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->text(v,x,y); }
87-
inline void text(float v,float x,float y) { if(PApplet::g_papplet) PApplet::g_papplet->text(v,x,y); }
88-
inline void textSize(float s) { if(PApplet::g_papplet) PApplet::g_papplet->textSize(s); }
89-
inline void textAlign(int a,int b=-1) { if(PApplet::g_papplet) PApplet::g_papplet->textAlign(a,b); }
90-
inline float textWidth(const ::std::string& s) { return PApplet::g_papplet ? PApplet::g_papplet->textWidth(s) : 0; }
91-
inline void tint(float r,float g,float b,float a){ if(PApplet::g_papplet) PApplet::g_papplet->tint(r,g,b,a); }
92-
inline void noTint() { if(PApplet::g_papplet) PApplet::g_papplet->noTint(); }
93-
inline void colorMode(int m,float mx=255.f) { if(PApplet::g_papplet) PApplet::g_papplet->colorMode(m,mx); }
94-
inline void blendMode(int m) { if(PApplet::g_papplet) PApplet::g_papplet->blendMode(m); }
95-
inline void noLoop() { if(PApplet::g_papplet) PApplet::g_papplet->noLoop(); }
96-
inline void loop() { if(PApplet::g_papplet) PApplet::g_papplet->loop(); }
97-
inline void redraw() { if(PApplet::g_papplet) PApplet::g_papplet->redraw(); }
98-
inline PImage* loadImage(const ::std::string& p) { return PApplet::g_papplet ? PApplet::g_papplet->loadImage(p) : nullptr; }
99-
inline PImage* createImage(int w,int h,int m=1) { return PApplet::g_papplet ? PApplet::g_papplet->createImage(w,h,m) : nullptr; }
100-
inline float noise(float x) { return PApplet::g_papplet ? PApplet::g_papplet->noise(x) : 0; }
101-
inline float noise(float x,float y) { return PApplet::g_papplet ? PApplet::g_papplet->noise(x,y) : 0; }
102-
inline float noise(float x,float y,float z) { return PApplet::g_papplet ? PApplet::g_papplet->noise(x,y,z) : 0; }
103-
inline float random(float hi) { return PApplet::g_papplet ? PApplet::g_papplet->random(hi) : 0; }
104-
inline float random(float lo,float hi) { return PApplet::g_papplet ? PApplet::g_papplet->random(lo,hi) : 0; }
105-
inline void lights() { if(PApplet::g_papplet) PApplet::g_papplet->lights(); }
106-
inline void noLights() { if(PApplet::g_papplet) PApplet::g_papplet->noLights(); }
107-
inline void box(float s) { if(PApplet::g_papplet) PApplet::g_papplet->box(s); }
108-
inline void box(float w,float h,float d) { if(PApplet::g_papplet) PApplet::g_papplet->box(w,h,d); }
109-
inline void sphere(float r) { if(PApplet::g_papplet) PApplet::g_papplet->sphere(r); }
110-
inline void camera(float ex,float ey,float ez,float cx,float cy,float cz,float ux,float uy,float uz){ if(PApplet::g_papplet) PApplet::g_papplet->camera(ex,ey,ez,cx,cy,cz,ux,uy,uz); }
111-
inline color lerpColor(color a,color b,float t) { return PApplet::g_papplet ? PApplet::g_papplet->lerpColor(a,b,t) : a; }
112-
inline bool isKeyDown(int k) {
113-
if(!PApplet::g_papplet||k<0||k>=256) return false;
114-
return PApplet::g_papplet->keysDown[k];
115-
}

0 commit comments

Comments
 (0)