/***************************************************************************
                            kde_PtyProcess.cpp -  description
                             -------------------
    begin                : Wed Feb  6 15:12:26 2002
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Wed Feb  6 15:12:26 2002, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This library is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU Library General Public License as       *
 *   published by the Free Software Foundation; either version 2 of the    *
 *   License, or (at your option) any later version.                       *
 *                                                                         *
 ***************************************************************************/

extern "C" {
#include "kde_PtyProcess.h"
}

#include <kdesu/process.h>

class PtyProcessBridge : public PtyProcess
{
public:
	PtyProcessBridge() : PtyProcess() {}
	~PtyProcessBridge() {}
};

kde_PtyProcess * kde_new_PtyProcess(){
	return (kde_PtyProcess *) new PtyProcessBridge();
}
void kde_del_PtyProcess( kde_PtyProcess* p ){
	delete (PtyProcessBridge*) p;
}
int kde_PtyProcess_exec( kde_PtyProcess* instPointer,qt_QCString* command, QCStringList args){
	return (int) ((PtyProcessBridge*)instPointer)->exec((QCString&)* (QCString*)command, (QCStringList&)args);
}
qt_QCString* kde_PtyProcess_readLine( kde_PtyProcess* instPointer,int block){
	return (qt_QCString*)new QCString(((PtyProcessBridge*)instPointer)->readLine((bool)block));
}
void kde_PtyProcess_writeLine( kde_PtyProcess* instPointer,qt_QCString* line, int addNewline){
	((PtyProcessBridge*)instPointer)->writeLine((QCString&)* (QCString*)line, (bool)addNewline);
	return;
}
void kde_PtyProcess_unreadLine( kde_PtyProcess* instPointer,qt_QCString* line, int addNewline){
	((PtyProcessBridge*)instPointer)->unreadLine((QCString&)* (QCString*)line, (bool)addNewline);
	return;
}
void kde_PtyProcess_setExitString( kde_PtyProcess* instPointer,qt_QCString* exit){
	((PtyProcessBridge*)instPointer)->setExitString((QCString&)* (QCString*)exit);
	return;
}
int kde_PtyProcess_waitForChild( kde_PtyProcess* instPointer){
	return (int) ((PtyProcessBridge*)instPointer)->waitForChild();
}
int kde_PtyProcess_WaitSlave( kde_PtyProcess* instPointer){
	return (int) ((PtyProcessBridge*)instPointer)->WaitSlave();
}
int kde_PtyProcess_enableLocalEcho( kde_PtyProcess* instPointer,int enable){
	return (int) ((PtyProcessBridge*)instPointer)->enableLocalEcho((bool)enable);
}
void kde_PtyProcess_setTerminal( kde_PtyProcess* instPointer,int terminal){
	((PtyProcessBridge*)instPointer)->setTerminal((bool)terminal);
	return;
}
void kde_PtyProcess_setErase( kde_PtyProcess* instPointer,int erase){
	((PtyProcessBridge*)instPointer)->setErase((bool)erase);
	return;
}
void kde_PtyProcess_setEnvironment( kde_PtyProcess* instPointer,QCStringList env){
	((PtyProcessBridge*)instPointer)->setEnvironment((QCStringList&)env);
	return;
}
int kde_PtyProcess_fd( kde_PtyProcess* instPointer){
	return (int) ((PtyProcessBridge*)instPointer)->fd();
}
int kde_PtyProcess_pid( kde_PtyProcess* instPointer){
	return (int) ((PtyProcessBridge*)instPointer)->pid();
}
