coreapplicationuis/rfsplugins/FormatterRFSPlugin/inc/selectiveformatter.h
changeset 65 8a530a83576a
parent 0 2e3d3ce01487
equal deleted inserted replaced
56:11a052f4b02e 65:8a530a83576a
     1 /*
     1 /*
     2 * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). 
     2 * Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). 
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
   113     /**
   113     /**
   114     * Handles application specific exclude list loading on specified drive.
   114     * Handles application specific exclude list loading on specified drive.
   115     */
   115     */
   116     void HandleAppExcludeListsOnDriveL( TPtr aBuf, TChar aDrive );
   116     void HandleAppExcludeListsOnDriveL( TPtr aBuf, TChar aDrive );
   117 
   117 
       
   118     /**
       
   119     * Handles NR-Application specific exclude list loading.       
       
   120     */
       
   121     void HandleNrExcludeListsL();
       
   122 
       
   123     /**
       
   124     * Append the list of nr-files to the excludelist entry.
       
   125     */
       
   126     void AppendNrlisttoExcludeListL(RPointerArray<HBufC> &nrFileList);
       
   127 
   118 private: // Data
   128 private: // Data
   119 
   129 
   120     /** File server session. */
   130     /** File server session. */
   121     RFs iFs;
   131     RFs iFs;
   122 
   132 
   134         
   144         
   135     /** ETrue if there is valid exclude list content. */
   145     /** ETrue if there is valid exclude list content. */
   136     TBool iValidExcludeListFound;
   146     TBool iValidExcludeListFound;
   137     };
   147     };
   138 
   148 
       
   149 /** 
       
   150 Template class CleanupResetAndDestroy to clean up the array
       
   151 of implementation information from the cleanup stack.
       
   152 */
       
   153 
       
   154 template <class T>
       
   155 class CleanupResetAndDestroy
       
   156     {
       
   157 public:
       
   158     /**
       
   159     Puts an item on the cleanup stack.
       
   160 
       
   161     @param  aRef 
       
   162             The implementation information to be put on the cleanup stack.
       
   163     */
       
   164     inline static void PushL(T& aRef);
       
   165 private:
       
   166     static void ResetAndDestroy(TAny *aPtr);
       
   167     };
       
   168 template <class T>
       
   169 inline void CleanupResetAndDestroyPushL(T& aRef);
       
   170 template <class T>
       
   171 inline void CleanupResetAndDestroy<T>::PushL(T& aRef)
       
   172     {CleanupStack::PushL(TCleanupItem(&ResetAndDestroy,&aRef));}
       
   173 template <class T>
       
   174 void CleanupResetAndDestroy<T>::ResetAndDestroy(TAny *aPtr)
       
   175     {(STATIC_CAST(T*,aPtr))->ResetAndDestroy();}
       
   176 template <class T>
       
   177 inline void CleanupResetAndDestroyPushL(T& aRef)
       
   178     {CleanupResetAndDestroy<T>::PushL(aRef);}
       
   179 
   139 #endif // C_SELECTIVEFORMATTER_H
   180 #endif // C_SELECTIVEFORMATTER_H