epoc32/include/app/calsession.h
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     7 //
     8 // Initial Contributors:
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
     9 // Nokia Corporation - initial contribution.
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
    21 #include <calchangecallback.h>
    21 #include <calchangecallback.h>
    22 #include <calnotification.h>
    22 #include <calnotification.h>
    23 
    23 
    24 class CCalSessionImpl;
    24 class CCalSessionImpl;
    25 class MCalChangeCallBack2;
    25 class MCalChangeCallBack2;
       
    26 class CCalSession;
       
    27 class CCalCalendarInfo;
       
    28 class MCalFileChangeObserver;
    26 
    29 
    27 /** A handle to the calendar file.
    30 /** A handle to the calendar file.
    28 
    31 
    29 When the client instantiates a CCalSession, it will connect to the calendar server. 
    32 When the client instantiates a CCalSession, it will connect to the calendar server. 
    30 In turn, the client can use its APIs, for instance to create or open a calendar file.
    33 In turn, the client can use its APIs, for instance to create or open a calendar file.
    49 */
    52 */
    50 NONSHARABLE_CLASS(CCalSession) : public CBase
    53 NONSHARABLE_CLASS(CCalSession) : public CBase
    51     {
    54     {
    52 public:
    55 public:
    53 	IMPORT_C static CCalSession* NewL();
    56 	IMPORT_C static CCalSession* NewL();
       
    57 	IMPORT_C static CCalSession* NewL(CCalSession& aCalSession);
    54 	IMPORT_C ~CCalSession();
    58 	IMPORT_C ~CCalSession();
    55 
    59 
    56 	IMPORT_C void CreateCalFileL(const TDesC&  aFileName) const;
    60 	IMPORT_C void CreateCalFileL(const TDesC& aFileName) const;
       
    61 	IMPORT_C void CreateCalFileL(const TDesC& aFileName, const CCalCalendarInfo& aCalendarInfo) const;
       
    62 	IMPORT_C void SetCalendarInfoL(const CCalCalendarInfo& aCalendarInfo) const;
       
    63 	IMPORT_C CCalCalendarInfo* CalendarInfoL() const;
       
    64 
    57 	IMPORT_C void OpenL(const TDesC& aFileName) const;
    65 	IMPORT_C void OpenL(const TDesC& aFileName) const;
    58 	IMPORT_C void OpenL(const TDesC& aFileName, CalCommon::TCalFileVersionSupport& aFileSupportStatus) const;
    66 	IMPORT_C void OpenL(const TDesC& aFileName, CalCommon::TCalFileVersionSupport& aFileSupportStatus) const;
    59 	IMPORT_C const TDesC& DefaultFileNameL() const; 
    67 	IMPORT_C const TDesC& DefaultFileNameL() const; 
    60 	IMPORT_C void DeleteCalFileL(const TDesC& aFileName) const;
    68 	IMPORT_C void DeleteCalFileL(const TDesC& aFileName) const;
    61 	IMPORT_C CDesCArray* ListCalFilesL() const;
    69 	IMPORT_C CDesCArray* ListCalFilesL() const;
    62 
       
    63 	IMPORT_C void StartChangeNotification(MCalChangeCallBack2& aCallBack, const CCalChangeNotificationFilter& aFilter);
    70 	IMPORT_C void StartChangeNotification(MCalChangeCallBack2& aCallBack, const CCalChangeNotificationFilter& aFilter);
       
    71 	IMPORT_C void StartFileChangeNotificationL(MCalFileChangeObserver& aCallBack);
    64 	IMPORT_C void StopChangeNotification();
    72 	IMPORT_C void StopChangeNotification();
       
    73 	IMPORT_C void StopFileChangeNotification();
    65 	IMPORT_C void DisableChangeBroadcast();
    74 	IMPORT_C void DisableChangeBroadcast();
    66 	IMPORT_C void EnableChangeBroadcast();
    75 	IMPORT_C void EnableChangeBroadcast();
    67 	
    76 	
    68 	IMPORT_C void EnablePubSubNotificationsL();
    77 	IMPORT_C void EnablePubSubNotificationsL();
    69 	IMPORT_C void DisablePubSubNotificationsL();
    78 	IMPORT_C void DisablePubSubNotificationsL();
    70 	
    79 	
    71 	IMPORT_C void FileIdL(TCalFileId& aCalFileId) const;
    80 	IMPORT_C void FileIdL(TCalFileId& aCalFileId) const;
    72 	IMPORT_C void GetFileNameL(TCalPubSubData aPubSubData, TDes& aFileName) const;
    81 	IMPORT_C void GetFileNameL(TCalPubSubData aPubSubData, TDes& aFileName) const;
    73 	IMPORT_C TBool IsFileNameL(TCalPubSubData aPubSubData, const TDesC& aFileName) const;
    82 	IMPORT_C TBool IsFileNameL(TCalPubSubData aPubSubData, const TDesC& aFileName) const;
    74 	IMPORT_C TBool IsOpenedFileL(TCalPubSubData aPubSubData) const;
    83 	IMPORT_C TBool IsOpenedFileL(TCalPubSubData aPubSubData) const;
    75 
    84 	IMPORT_C TCalCollectionId CollectionIdL() const;
       
    85 	
    76 	// debug only
    86 	// debug only
    77 /**
    87 /**
    78 @publishedPartner
    88 @publishedPartner
    79 @released
    89 @released
    80 */
    90 */
    97 	CCalSessionImpl& Impl() const;
   107 	CCalSessionImpl& Impl() const;
    98 	  
   108 	  
    99 private:
   109 private:
   100 	CCalSession();
   110 	CCalSession();
   101 	void ConstructL();
   111 	void ConstructL();
       
   112 	void ConstructL(CCalSession& aCalSession);
   102 private:
   113 private:
   103 	CCalSessionImpl* iImpl;
   114 	CCalSessionImpl* iImpl;
   104 	};
   115 	};
   105 	
   116 	
   106 #endif // __CALSESSION_H__
   117 #endif // __CALSESSION_H__