diff -r 1fc85118c3ae -r 870918037e16 landmarksui/engine/inc/CLmkLandmark.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/landmarksui/engine/inc/CLmkLandmark.h Wed Sep 01 12:31:27 2010 +0100 @@ -0,0 +1,118 @@ +/* +* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: LandmarksUi Content File - +* See class description below +* +*/ + + + + + + + +#ifndef CLMKLANDMARK_H +#define CLMKLANDMARK_H + +// INCLUDES +#include +#include +#include +#include + +// CLASS DECLARATION + +/** +* This is a container class for a landmark. +* +* A landmark is principally a location with a name. +* +* The landmark object can either be created by a client or retrieved from +* @ref CPosLandmarkDatabase. +* +* A landmark consists of a number of landmark attributes, e.g. landmark name, +* landmark position, coverage area, etc. +* +* A landmark may also contain generic position fields. These position fields +* are defined in LbsFields.h. Only text fields are supported. +* +* CLmkLandmark contains functions for setting and getting landmark attributes +* and position fields. +* +* Note that CLmkLandmark is only a local representation of the landmark. To +* update the database, call @ref CPosLandmarkDatabase::UpdateLandmarkL (or +* @ref CPosLandmarkDatabase::AddLandmarkL for a new landmark). +* +* @lib eposlandmarks.lib +* @since S60 3.0 +* @version $Revision: 1.15 $, $Date: 2005/07/07 13:40:48 $ +*/ +class CLmkLandmark : public CBase + { + + public: // Constructors and destructor + + /** + * Two-phased copy constructor. + * + * @param aLandmark The landmark to copy. + * @returns A copy of the specified landmark object. + */ + IMPORT_C static CLmkLandmark* NewL( + const CPosLandmark* aLandmark, + const RPointerArray& aCategories + ); + + IMPORT_C static CLmkLandmark* NewL( + const CLmkLandmark& aLandmark); + + + /** + * Destructor. + */ + virtual ~CLmkLandmark(); + + public://New Functions + + IMPORT_C CPosLandmark* PosLandmark(); + IMPORT_C RPointerArray& Categories(); + + private: + + /** + * C++ default constructor. + */ + CLmkLandmark(); + + CLmkLandmark(const CPosLandmark* aLandmark, + const RPointerArray& aCategories); + + // Prohibit copy constructor + CLmkLandmark(const CLmkLandmark&); + + // Prohibit assigment operator + CLmkLandmark& operator= (const CLmkLandmark&); + + void ConstructL(const CPosLandmark* aLandmark, + const RPointerArray& aCategories); + + private: // Data + + CPosLandmark* iLandmark; + RPointerArray iCategories; + }; + +#endif // CLMKLANDMARK_H + +// End of File