Exemple #1
0
	int main(int _argc, char** _argv)
	{
		//DBG(BX_COMPILER_NAME " / " BX_CPU_NAME " / " BX_ARCH_NAME " / " BX_PLATFORM_NAME);

#if BX_CONFIG_CRT_FILE_READER_WRITER
		s_fileReader = new bx::CrtFileReader;
		s_fileWriter = new bx::CrtFileWriter;
#endif // BX_CONFIG_CRT_FILE_READER_WRITER

		cmdInit();
		cmdAdd("mouselock", cmdMouseLock);
		cmdAdd("graphics",  cmdGraphics );
		cmdAdd("exit",      cmdExit     );

		inputInit();
		inputAddBindings("bindings", s_bindings);

		entry::WindowHandle defaultWindow = { 0 };
		entry::setWindowTitle(defaultWindow, bx::baseName(_argv[0]));

		int32_t result = ::_main_(_argc, _argv);

		inputRemoveBindings("bindings");
		inputShutdown();

		cmdShutdown();

#if BX_CONFIG_CRT_FILE_READER_WRITER
		delete s_fileReader;
		s_fileReader = NULL;

		delete s_fileWriter;
		s_fileWriter = NULL;
#endif // BX_CONFIG_CRT_FILE_READER_WRITER

		return result;
	}
bool DoScript( CClientSession* pSession, istream& ifscript )
{

	char buf[_MAX_LINE];

	while( !ifscript.eof() ){
		ifscript.getline( buf, ELEMENTS(buf) );
		if( ifscript.fail() )break;

		trimleft( buf );
		if( buf[0]=='\0' || strncmp(buf, "//", 2)==0 )continue;	//skip comments
		
		char* pcmd = buf;
		char* pval = buf;
		while( *pval && !isspace(*pval) )pval++;

		if( *pval!='\0' ){
			*pval++ = '\0';
		}
		trimright( pcmd );
		strlwr( pcmd );
		trimleft( pval );

		if( strcmp( pcmd, "put" )==0 ){
			cmdPutFiles( pSession, pval );
		}else if( strcmp( pcmd, "get" )==0 ){
			cmdGetFiles( pSession, pval );
		}else if( strcmp( pcmd, "rm" )==0 ){
			cmdRemove( pSession, pval );
		}else if( strcmp( pcmd, "chmod" )==0 ){
			cmdChMod( pSession, pval );
		}else if( strcmp( pcmd, "run" )==0 ){
			cmdRunImage( pSession, pval );
		}else if( strcmp( pcmd, "mkdir" )==0 ){
			cmdMkDir( pSession, pval );
		}else if( strcmp( pcmd, "cd" )==0 ){
			cmdChDir( pSession, pval );
		}else if( strcmp( pcmd, "rmdir" )==0 ){
			cmdRmDir( pSession, pval );
		}else if( strcmp( pcmd, "ls" )==0 ){
			cmdListDir( pSession, pval );
		}else if( strcmp( pcmd, "ln" )==0 ){
			cmdSoftLink( pSession, pval );
		}else if( strcmp( pcmd, "info" )==0 ){
			cmdSysInfo( pSession );
		}else if( strcmp( pcmd, "fmode" )==0 ){
			cmdFileMode( pSession, pval );
		}else if( strcmp( pcmd, "clrdir" )==0 ){
			cmdClearDir( pSession, pval );
		}else if( strcmp( pcmd, "sys" )==0 ){
//			cmdSystem( pval );
		}else if( strcmp( pcmd, "kill" )==0 ){
//			cmdKillProcs( pSession );
		}else if( strcmp( pcmd, "idle" )==0 ){
//			cmdSetIdle( pSession, pval );
		}else if( strcmp( pcmd, "end" )==0 ){
			break;
		}else if( strcmp( pcmd, "shutdown" )==0 ){
			cmdShutdown( pSession, pval );
		}else{
			cout<<"unknownd command."<<endl;
		}
	}
	return true;
}
Exemple #3
0
	int main(int _argc, char** _argv)
	{
		//DBG(BX_COMPILER_NAME " / " BX_CPU_NAME " / " BX_ARCH_NAME " / " BX_PLATFORM_NAME);

		if (BX_ENABLED(ENTRY_CONFIG_PROFILER) )
		{
			rmtSettings* settings = rmt_Settings();
			BX_WARN(NULL != settings, "Remotery is not enabled.");
			if (NULL != settings)
			{
				settings->malloc  = rmtMalloc;
				settings->realloc = rmtRealloc;
				settings->free    = rmtFree;

				rmtError err = rmt_CreateGlobalInstance(&s_rmt);
				BX_WARN(RMT_ERROR_NONE != err, "Remotery failed to create global instance.");
				if (RMT_ERROR_NONE == err)
				{
					rmt_SetCurrentThreadName("Main");
				}
				else
				{
					s_rmt = NULL;
				}
			}
		}

#if BX_CONFIG_CRT_FILE_READER_WRITER
		s_fileReader = new bx::CrtFileReader;
		s_fileWriter = new bx::CrtFileWriter;
#endif // BX_CONFIG_CRT_FILE_READER_WRITER

		cmdInit();
		cmdAdd("mouselock", cmdMouseLock);
		cmdAdd("graphics",  cmdGraphics );
		cmdAdd("exit",      cmdExit     );

		inputInit();
		inputAddBindings("bindings", s_bindings);

		entry::WindowHandle defaultWindow = { 0 };
		entry::setWindowTitle(defaultWindow, bx::baseName(_argv[0]) );
		setWindowSize(defaultWindow, ENTRY_DEFAULT_WIDTH, ENTRY_DEFAULT_HEIGHT);

		int32_t result = ::_main_(_argc, _argv);

		inputRemoveBindings("bindings");
		inputShutdown();

		cmdShutdown();

#if BX_CONFIG_CRT_FILE_READER_WRITER
		delete s_fileReader;
		s_fileReader = NULL;

		delete s_fileWriter;
		s_fileWriter = NULL;
#endif // BX_CONFIG_CRT_FILE_READER_WRITER

		if (BX_ENABLED(ENTRY_CONFIG_PROFILER)
		&&  NULL != s_rmt)
		{
			rmt_DestroyGlobalInstance(s_rmt);
		}

		return result;
	}