NxWM: Add IApplicationFactory so that we can create multiple instances of applications; And, as a result of that, re-vamp entire threading model. this is now buggier than it was before

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4742 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2012-05-16 22:43:40 +00:00
parent 1ebf20d66e
commit 7a79d40ef6
3 changed files with 79 additions and 3 deletions

View File

@ -2771,3 +2771,5 @@
compilation errors when CONFIG_SCHED_ONEXIT is defined.
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM not uses the STMPE11
touchscreen.
* include/cxx/csched: Added

View File

@ -1014,8 +1014,8 @@ CONFIG_STMPE11_GPIOINT_DISABLE=y
CONFIG_STMPE11_SWAPXY=n
CONFIG_STMPE11_TEMP_DISABLE=y
CONFIG_STMPE11_REGDEBUG=n
CONFIG_STMPE11_THRESHX=26
CONFIG_STMPE11_THRESHY=34
CONFIG_STMPE11_THRESHX=39
CONFIG_STMPE11_THRESHY=51
#
# USB Device Configuration
@ -1324,7 +1324,7 @@ CONFIG_NXWM_TOUCHSCREEN=y
#
CONFIG_NXCONSOLE=y
CONFIG_NXCONSOLE_BPP=16
CONFIG_NXCONSOLE_MXCHARS=256
CONFIG_NXCONSOLE_MXCHARS=325
CONFIG_NXCONSOLE_CACHESIZE=32
# CONFIG_NXCONSOLE_LINESEPARATION
# CONFIG_NXCONSOLE_NOWRAP

74
include/cxx/csched Normal file
View File

@ -0,0 +1,74 @@
//***************************************************************************
// include/cxx/cfcntl
//
// Copyright (C) 2012 Gregory Nutt. All rights reserved.
// Author: Gregory Nutt <gnutt@nuttx.org>
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
//
// 1. Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in
// the documentation and/or other materials provided with the
// distribution.
// 3. Neither the name NuttX nor the names of its contributors may be
// used to endorse or promote products derived from this software
// without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
//
//***************************************************************************
#ifndef __INCLUDE_CXX_CSCHED
#define __INCLUDE_CXX_CSCHED
//***************************************************************************
// Included Files
//***************************************************************************
#include <sched.h>
//***************************************************************************
// Namespace
//***************************************************************************
namespace std
{
using ::sched_param;
using ::task_init;
using ::task_activate;
using ::task_create;
using ::task_delete;
using ::task_restart;
using ::sched_setparam;
using ::sched_getparam;
using ::sched_setscheduler;
using ::sched_getscheduler;
using ::sched_get_priority_max;
using ::sched_get_priority_min;
using ::sched_rr_get_interval;
using ::sched_lock;
using ::sched_unlock;
using ::sched_lockcount;
#ifdef CONFIG_SCHED_INSTRUMENTATION
using ::sched_note_start;
using ::sched_note_stop;
using ::sched_note_switch;
#endif
}
#endif // __INCLUDE_CXX_CSCHED