
package b4j.example;

import java.io.IOException;
import anywheresoftware.b4a.BA;
import anywheresoftware.b4a.pc.PCBA;
import anywheresoftware.b4a.pc.RDebug;
import anywheresoftware.b4a.pc.RemoteObject;
import anywheresoftware.b4a.pc.RDebug.IRemote;
import anywheresoftware.b4a.pc.Debug;
import anywheresoftware.b4a.pc.B4XTypes.B4XClass;
import anywheresoftware.b4a.pc.B4XTypes.DeviceClass;

public class main implements IRemote{
	public static main mostCurrent;
	public static RemoteObject ba;
    public static boolean processGlobalsRun;
    public static RemoteObject myClass;
    public static RemoteObject remoteMe;
	public main() {
		mostCurrent = this;
	}
    public RemoteObject getRemoteMe() {
        return remoteMe;    
    }
    
public boolean isSingleton() {
		return true;
	}
    static {
		mostCurrent = new main();
		remoteMe = RemoteObject.declareNull("b4j.example.main");
        anywheresoftware.b4a.pc.RapidSub.moduleToObject.put(new B4XClass("main"), "b4j.example.main");
	}
    public static void main (String[] args) throws Exception {
		new RDebug(args[0], Integer.parseInt(args[1]), Integer.parseInt(args[2]), args[3]);
		RDebug.INSTANCE.waitForTask();

	}
    private static PCBA pcBA = new PCBA(null, main.class);
	public static RemoteObject runMethod(boolean notUsed, String method, Object... args) throws Exception{
		return (RemoteObject) pcBA.raiseEvent(method.substring(1), args);
	}
    public static void runVoidMethod(String method, Object... args) throws Exception{
		runMethod(false, method, args);
	}
    public static RemoteObject getObject() {
		return myClass;
	 }
	public PCBA create(Object[] args) throws ClassNotFoundException{
		ba = (RemoteObject) args[1];
		pcBA = new PCBA(this, main.class);
        main_subs_0.initializeProcessGlobals();
		return pcBA;
	}
public static RemoteObject __c = RemoteObject.declareNull("anywheresoftware.b4a.keywords.Common");
public static RemoteObject _fx = RemoteObject.declareNull("anywheresoftware.b4j.objects.JFX");
public static RemoteObject _mainform = RemoteObject.declareNull("anywheresoftware.b4j.objects.Form");
public static RemoteObject _cvsbackground = RemoteObject.declareNull("anywheresoftware.b4j.objects.CanvasWrapper");
public static RemoteObject _cvslayer0 = RemoteObject.declareNull("anywheresoftware.b4j.objects.CanvasWrapper");
public static RemoteObject _cvslayer1 = RemoteObject.declareNull("anywheresoftware.b4j.objects.CanvasWrapper");
public static RemoteObject _cvslayer2 = RemoteObject.declareNull("anywheresoftware.b4j.objects.CanvasWrapper");
public static RemoteObject _cvslayer = null;
public static RemoteObject _bmpbackground = RemoteObject.declareNull("anywheresoftware.b4j.objects.ImageViewWrapper.ImageWrapper");
public static RemoteObject _xc = RemoteObject.createImmutable(0);
public static RemoteObject _yc = RemoteObject.createImmutable(0);
public static RemoteObject _x1 = RemoteObject.createImmutable(0);
public static RemoteObject _y1 = RemoteObject.createImmutable(0);
public static RemoteObject _x2 = RemoteObject.createImmutable(0);
public static RemoteObject _y2 = RemoteObject.createImmutable(0);
public static RemoteObject _w1 = RemoteObject.createImmutable(0);
public static RemoteObject _w2 = RemoteObject.createImmutable(0);
  public Object[] GetGlobals() {
		return new Object[] {"bmpBackground",main._bmpbackground,"cvsBackground",main._cvsbackground,"cvsLayer",main._cvslayer,"cvsLayer0",main._cvslayer0,"cvsLayer1",main._cvslayer1,"cvsLayer2",main._cvslayer2,"fx",main._fx,"MainForm",main._mainform,"w1",main._w1,"w2",main._w2,"x1",main._x1,"x2",main._x2,"xc",main._xc,"y1",main._y1,"y2",main._y2,"yc",main._yc};
}
}