diff options
author | Norbert Thiebaud <nthiebaud@gmail.com> | 2010-10-11 01:26:24 -0500 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2010-10-25 19:55:36 -0500 |
commit | 407f8c9293b95106ed8ca1ea09d000d975a8583d (patch) | |
tree | 93663370e7e0550f2d01b410b549e6fa24b09c4e /vos | |
parent | 8daf7c66c52cfecc650904415d61a38a0797f6e6 (diff) |
merge vosremoval-signal patch
Diffstat (limited to 'vos')
-rw-r--r-- | vos/inc/vos/signal.hxx | 100 | ||||
-rw-r--r-- | vos/source/makefile.mk | 2 | ||||
-rw-r--r-- | vos/source/signal.cxx | 66 |
3 files changed, 0 insertions, 168 deletions
diff --git a/vos/inc/vos/signal.hxx b/vos/inc/vos/signal.hxx deleted file mode 100644 index 0d11ee8f2188..000000000000 --- a/vos/inc/vos/signal.hxx +++ /dev/null @@ -1,100 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - - -#ifndef _VOS_SIGNAL_HXX_ -#define _VOS_SIGNAL_HXX_ - -# include <vos/types.hxx> -# include <vos/object.hxx> -# include <osl/signal.h> - -namespace vos -{ - -extern "C" -typedef oslSignalAction SignalHandlerFunction_impl(void *, oslSignalInfo *); -SignalHandlerFunction_impl signalHandlerFunction_impl; - -/** OSignalHandler is an objectoriented interface for signal handlers. - - @author Ralf Hofmann - @version 1.0 -*/ - -class OSignalHandler : public NAMESPACE_VOS(OObject) -{ - VOS_DECLARE_CLASSINFO(VOS_NAMESPACE(OSignalHandler, vos)); - -public: - - enum TSignal - { - TSignal_System = osl_Signal_System, - TSignal_Terminate = osl_Signal_Terminate, - TSignal_AccessViolation = osl_Signal_AccessViolation, - TSignal_IntegerDivideByZero = osl_Signal_IntegerDivideByZero, - TSignal_FloatDivideByZero = osl_Signal_FloatDivideByZero, - TSignal_DebugBreak = osl_Signal_DebugBreak, - TSignal_SignalUser = osl_Signal_User - }; - - enum TSignalAction - { - TAction_CallNextHandler = osl_Signal_ActCallNextHdl, - TAction_Ignore = osl_Signal_ActIgnore, - TAction_AbortApplication = osl_Signal_ActAbortApp, - TAction_KillApplication = osl_Signal_ActKillApp - }; - - typedef oslSignalInfo TSignalInfo; - - /// Constructor - OSignalHandler(); - - /// Destructor kills thread if neccessary - virtual ~OSignalHandler(); - - static TSignalAction SAL_CALL raise(sal_Int32 Signal, void *pData = 0); - -protected: - - /// Working method which should be overridden. - virtual TSignalAction SAL_CALL signal(TSignalInfo *pInfo) = 0; - -protected: - oslSignalHandler m_hHandler; - - friend oslSignalAction signalHandlerFunction_impl(void *, oslSignalInfo *); -}; - -} - -#endif // _VOS_SIGNAL_HXX_ - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vos/source/makefile.mk b/vos/source/makefile.mk index 5b9a8c7ad997..7afe987703ae 100644 --- a/vos/source/makefile.mk +++ b/vos/source/makefile.mk @@ -46,7 +46,6 @@ SLOFILES= $(SLO)$/conditn.obj \ $(SLO)$/module.obj \ $(SLO)$/timer.obj \ $(SLO)$/process.obj \ - $(SLO)$/signal.obj \ $(SLO)$/pipe.obj \ $(SLO)$/xception.obj @@ -61,7 +60,6 @@ OBJFILES= $(OBJ)$/conditn.obj \ $(OBJ)$/module.obj \ $(OBJ)$/timer.obj \ $(OBJ)$/process.obj \ - $(OBJ)$/signal.obj \ $(OBJ)$/pipe.obj \ $(OBJ)$/xception.obj diff --git a/vos/source/signal.cxx b/vos/source/signal.cxx deleted file mode 100644 index 75a13aadd202..000000000000 --- a/vos/source/signal.cxx +++ /dev/null @@ -1,66 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - - -#include <osl/diagnose.h> -#include <vos/object.hxx> -#include <vos/signal.hxx> - -using namespace vos; - -oslSignalAction vos::signalHandlerFunction_impl( - void * pthis, oslSignalInfo * pInfo) -{ - NAMESPACE_VOS(OSignalHandler)* pThis= (NAMESPACE_VOS(OSignalHandler)*)pthis; - - return ((oslSignalAction)pThis->signal(pInfo)); -} - -///////////////////////////////////////////////////////////////////////////// -// Thread class - -VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OSignalHandler, vos), - VOS_NAMESPACE(OSignalHandler, vos), - VOS_NAMESPACE(OObject, vos), 0); - -OSignalHandler::OSignalHandler() -{ - m_hHandler = osl_addSignalHandler(signalHandlerFunction_impl, this); -} - -OSignalHandler::~OSignalHandler() -{ - osl_removeSignalHandler(m_hHandler); -} - -OSignalHandler::TSignalAction OSignalHandler::raise(sal_Int32 Signal, void *pData) -{ - return (TSignalAction)osl_raiseSignal(Signal, pData); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |