epoc-gps-module.hpp

Go to the documentation of this file.
00001 #ifndef __epoc_gps_module_hpp__
00002 #define __epoc_gps_module_hpp__
00003 
00004 #include "epoc-gps-observer.hpp"
00005 
00006 #include "common/epoc-session.hpp"
00007 
00008 #include <e32std.h>
00009 #include <lbs.h> // link against lbs.lib
00010 #include <lbssatellite.h>
00011 
00012 NONSHARABLE_CLASS(CPosModuleStatAo) :
00013   public CActive
00014 {
00015  public: 
00016   static CPosModuleStatAo* NewL(MObserverPosMod& aObserver);
00017   virtual ~CPosModuleStatAo();
00018 
00019  private:
00020   CPosModuleStatAo(MObserverPosMod& aObserver);
00021   void ConstructL();
00022 
00023  private:
00024   DEF_SESSION(RPositionServer, iPositionServer);
00025   MObserverPosMod& iObserver;
00026   TPositionModuleStatusEvent iPositionModuleStatusEvent;
00027 
00028  public:
00029   // All requests are single-shot, and never made automatically.
00030   void MakeRequest();
00031 
00032   enum { // modifier flags
00033     KAllowAssisted = 1,
00034     KAllowExternal = 2
00035   };
00036   TPositionModuleId ChooseBestPositionerL(TInt aModifiers);
00037 
00038   RPositionServer& PositionServer()
00039   {
00040     return iPositionServer;
00041   }
00042 
00043  private:
00044   void PosModChange();
00045 
00046  private: // CActive
00047   virtual void DoCancel();
00048   virtual TInt RunError(TInt errCode);
00049   virtual void RunL();
00050 };
00051 
00052 #endif /* __epoc_gps_module_hpp__ */
00053 
00054 /**
00055 
00056 Copyright 2009-2011 Helsinki Institute for Information Technology
00057 (HIIT) and the authors. All rights reserved.
00058 
00059 Authors: Tero Hasu <tero.hasu@hut.fi>
00060 
00061 Permission is hereby granted, free of charge, to any person
00062 obtaining a copy of this software and associated documentation files
00063 (the "Software"), to deal in the Software without restriction,
00064 including without limitation the rights to use, copy, modify, merge,
00065 publish, distribute, sublicense, and/or sell copies of the Software,
00066 and to permit persons to whom the Software is furnished to do so,
00067 subject to the following conditions:
00068 
00069 The above copyright notice and this permission notice shall be
00070 included in all copies or substantial portions of the Software.
00071 
00072 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00073 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00074 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
00075 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
00076 BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
00077 ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00078 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
00079 SOFTWARE.
00080 
00081  **/
00082 

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