/*
 *  ltosx.h
 *  lt
 *
 *  Created by Shane Saxon on 4/4/05.
 *
 *  Shane Saxon has waived all copyright and related or neighboring rights to
 *  "miniTweezers GUI". Published from the United States as Public Domain.
 *  Creative Commons License CC0 1.0 Universal.
 *
 *  Created by Shane Saxon with contributions by Steven Smith, Evan Sperber,
 *  and Josep-Maria Huguet.  Code base started in 2004.
 *
 *  To view the full license with a list of additional authors and to download or
 *  contribute code goto http://tweezerslab.unipr.it/license.html
 */

#ifndef _ltosx_h_
#define _ltosx_h_

int ConverterMain();

int InitNib();									//start nib, no windows open
int InitEvents(void* data);							//creates timer loop and event handlers
void InitThreads(void* data);				//calls MakeThread, need to add a list using data, debug

void MoveCursorToMotorsButton (void* data);

	//used to create new threads
	//passed a function to be called from the thread task and a pointer to data
int MakeThread(int (*pFunction) (void*), void* data);

int ThreadCurrentID();
int ThreadKillThread(int threadID);
void ThreadLockCurrentID(int locked);

int StopThread(int threadID);

int CloseThreads(void* data);
void CloseEvents(void* data);							//remove event loop timer on exit
void CloseNib(void* data);								//dispose the nib reference on exit

#endif