casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
SigHandler.h
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //# SigHandler.h: Definition of the signal handling  class
00003 //# Copyright (C) 2012
00004 //# Associated Universities, Inc. Washington DC, USA.
00005 //#
00006 //# This library is free software; you can redistribute it and/or modify it
00007 //# under the terms of the GNU Library General Public License as published by
00008 //# the Free Software Foundation; either version 2 of the License, or (at your
00009 //# option) any later version.
00010 //#
00011 //# This library is distributed in the hope that it will be useful, but WITHOUT
00012 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00013 //# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
00014 //# License for more details.
00015 //#
00016 //# You should have received a copy of the GNU Library General Public License
00017 //# along with this library; if not, write to the Free Software Foundation,
00018 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
00019 //#
00020 //# Correspondence concerning AIPS++ should be addressed as follows:
00021 //#        Internet email: aips2-request@nrao.edu.
00022 //#        Postal address: AIPS++ Project Office
00023 //#                        National Radio Astronomy Observatory
00024 //#                        520 Edgemont Road
00025 //#                        Charlottesville, VA 22903-2475 USA
00026 //#
00027 //# $Id$
00028 
00029 #include <casa/aips.h>
00030 #include <iostream.h>
00031 #include <signal.h>
00032 
00033 //<example>
00034 //
00035 // </example>
00036 
00037 #ifndef SYNTHESIS_SIGHANDLER_H
00038 #define SYNTHESIS_SIGHANDLER_H
00039 
00040 
00041 namespace casa {
00042 
00043 
00044 class SigHandler  {
00045 
00046 public:
00047   SigHandler();
00048   ~SigHandler();
00049 
00050   static bool gotStopSignal();
00051   static void setStopSignal(Bool lala);
00052   //Reset handled signals back to default behavior
00053   static void resetSignalHandlers();
00054   //Will handle some signals; Abort and Interrupt
00055   void        setupSignalHandlers();
00056   static void theHandler(int sig);
00057   
00058 protected:
00059   static bool killOn_p;
00060 
00061 
00062 private:
00063 
00064 };
00065 
00066 } // end namespace casa
00067 #endif //