import otherSupport.SettingsManager;
import comedi.ComediOptions;
import comediJNI.Comedi;
import comediJNI.ComediJNIException;


/*
 * A little output demo
 * Part of Comedilib
 *
 * Copyright (c) 1999,2000 David A. Schleef <ds@schleef.org>
 *
 * This file may be freely modified, distributed, and combined with
 * other software, as long as proper attribution is given in the
 * source code.
 */
/*
 * A little output demo
 */
public class outp {
	static { new SettingsManager("minerva", true); 	}

	public static void main(String[] args) {
		
		long dev;
		int data;
		int ret;
		ComediOptions options = new ComediOptions();
		options.fileName = "/dev/comedi0_subd2";
		options.subdevice = 2;
		options.channel = 0;
		options.value = 0;

		//init_parsed_options(&options);
		//parse_options(&options, argc, argv);

		dev = Comedi.open(options.fileName);
		if(dev == 0)
			throw new ComediJNIException("open");
		

		data = (int)options.value;
		if(options.verbose){
			System.out.println("writing "+data+" to device="+options.fileName+" subdevice="+options.subdevice+" channel="+
					options.channel+" range="+options.range+" analog reference="+options.aref);
		}
	//int i;
//		for(i=0;i < 10000; i++){
//			data = !data;
			ret = Comedi.data_write(dev, options.subdevice, options.channel, options.range, options.aref, data);
			if(ret < 0)
				throw new ComediJNIException("data_write");
			
			System.out.println(data);
//			usleep(200);
//		}

	}

}
