process_handle_observer.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 
00003 // generated code -- do not edit
00004 
00005 #ifndef __PROCESS_HANDLE_OBSERVER_H__
00006 #define __PROCESS_HANDLE_OBSERVER_H__
00007 
00008 #include <e32base.h>
00009 
00010 /** A callback interface for CProcessHandleObserver.
00011  */
00012 class MProcessHandleObserver
00013 {
00014 public:
00015 
00016   virtual void HandleProcessHandleEvent(TInt aError) = 0;
00017 };
00018 
00019 /** A fairly generic active object that delivers process handle events via a callback interface.
00020  */
00021 class CProcessHandleObserver :
00022   public CActive
00023 {
00024 public:
00025 
00026   static CProcessHandleObserver *NewLC(MProcessHandleObserver &aInterface, TInt aPriority, RProcess &aProcess);
00027 
00028   static CProcessHandleObserver *NewL(MProcessHandleObserver &aInterface, TInt aPriority, RProcess &aProcess);
00029 
00030 private:
00031 
00032   CProcessHandleObserver(MProcessHandleObserver &aInterface, TInt aPriority, RProcess &aProcess);
00033 
00034   void ConstructL();
00035 
00036 public:
00037 
00038   ~CProcessHandleObserver();
00039 
00040   void MakeRequest();
00041 
00042 private:
00043 
00044   void DoCancel();
00045 
00046   virtual void RunL();
00047 
00048   MProcessHandleObserver &iInterface;
00049 
00050   RProcess &iProcess;
00051 };
00052 
00053 #endif // __PROCESS_HANDLE_OBSERVER_H__
00054 
00055 /** 
00056     Copyright 2008 Helsinki Institute for Information Technology (HIIT)
00057     and Tero Hasu <tero.hasu@hut.fi>. All rights reserved.
00058 
00059     This license applies:
00060 
00061     This program is free software; you can redistribute it and/or modify
00062     it under the terms of the GNU General Public License as published by
00063     the Free Software Foundation; either version 2 of the License, or
00064     (at your option) any later version.
00065 
00066     This program is distributed in the hope that it will be useful,
00067     but WITHOUT ANY WARRANTY; without even the implied warranty of
00068     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00069     GNU General Public License for more details.
00070 
00071     You should have received a copy of the GNU General Public License
00072     along with this program; if not, write to the Free Software
00073     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00074 
00075     Alternatively, this license applies:
00076 
00077     Permission is hereby granted, free of charge, to any person
00078     obtaining a copy of this software and associated documentation files
00079     (the "Software"), to deal in the Software without restriction,
00080     including without limitation the rights to use, copy, modify, merge,
00081     publish, distribute, sublicense, and/or sell copies of the Software,
00082     and to permit persons to whom the Software is furnished to do so,
00083     subject to the following conditions:
00084 
00085     The above copyright notice and this permission notice shall be
00086     included in all copies or substantial portions of the Software.
00087 
00088     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00089     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00090     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
00091     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
00092     BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
00093     ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00094     CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
00095     SOFTWARE.
00096  */

ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:49:56 2011 by Doxygen 1.6.1