mmuifw_plat/osn_global_api/inc/osn/osntypes.h
changeset 17 3eca7e70b1b8
parent 3 4526337fb576
--- a/mmuifw_plat/osn_global_api/inc/osn/osntypes.h	Tue Feb 02 00:28:09 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,723 +0,0 @@
-/*
-* Copyright (c) 2007 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:  Defines basic types.
- *
-*/
-
-
-
-#ifndef OSNTYPES_H
-#define OSNTYPES_H
-
-namespace osncore
-{
-
-/**
- * Defines a signed 8 bit integer.
- */
-typedef signed char int8;
-
-/**
- * Defines an unsigned 8 bit integer.
- */
-typedef unsigned char uint8;
-
-/**
- * Defines a signed 16 bit integer.
- */
-typedef signed short int int16;
-
-/**
- * Defines an unsigned 16 bit integer.
- */
-typedef unsigned short int uint16;
-
-/**
- * Defines an signed 32 bit integer.
- */
-typedef signed long int int32;
-
-/**
- * Defines an unsigned 32 bit integer.
- */
-typedef unsigned long int uint32;
-
-/**
- * Defines a signed 64 bit integer.
- */
-typedef signed long long int64;
-
-/**
- * Defines an unsigned 64 bit integer.
- */
-typedef unsigned long long uint64;
-
-/**
- * Defines a 32 bit floating point number.
- */
-typedef float float32;
-
-/**
- * Defines a 64 bit floating point number.
- */
-typedef double float64;
-
-/**
- * Defines an 8 bit character (usually ASCII).
- */
-typedef char char8;
-
-/**
- * Defines an system dependent unsigned int
- * (in 32 bit system it is 4 bytes and in 16 bit system it is 2 bytes).
- */
-typedef unsigned int        uint;
-
-/**
- * Defines an 8 bit unsigned char
- */
-typedef unsigned char       uchar;
-
-
-
-/**
- * Defines a 16 bit character (usually unicode).
- */
-#if defined(__VC32__)
-typedef uint16 char16;      //here a uint16 is needed because the vc
-//version of L"..." returns an unsigned short
-#elif defined(__CW32__)
-typedef uint16 char16;      //the same like for __VC32__
-#elif defined(__GCC32__)
-typedef __wchar_t char16;   //when using gcc the wchar_t type must be
-//used or else L in front of ASCI strings
-//(e.g. L"xyz") can't be used to assign a
-//unicode string to a char16[]
-#elif defined(__ARMCC_VERSION) // RVCT ARM COMPILER
-typedef wchar_t char16;
-#elif defined(__GCCE__)
-typedef wchar_t char16;
-#elif defined(__GNUC__)
-typedef uint16 char16;
-#endif
-
-/**
- * Defines a 32 bit boolean.
- */
-typedef int32 bool32;
-
-/**
- * Defines the return code data type.
- */
-typedef int32 ReturnCode;
-
-
-class CPoint;
-
-/**
- *  @class CSize osntypes.h "osn/osntypes.h"
- *  Defines a two dimensional size data type.
- *
- *  @since S60 5.0
- *  @status Draft
- *  @interfaces CSize
- */
-class CSize
-    {
-public:
-    /**
-     * Default constructor, initializing the mX and mY members to zero.
-     */
-    inline CSize();
-
-    /**
-     * Parameterized constructor.
-     *
-     * @param aX The first dimension of the size ( usually the width ).
-     * @param aY The second dimension of the size ( usually the height ).
-     */
-    inline CSize( int32 aX, int32 aY );
-
-    /**
-     * Copy constructor.
-     *
-     * @param aSize The size object to be copied.
-     */
-    inline CSize( const CSize& aSize );
-
-    /**
-     * Gets a CPoint whose coordinates are the width and height of this
-     * CSize.
-     *
-     * @return The coordinates of this CSize converted to a point.
-     */
-    inline CPoint AsPoint();
-
-    /**
-     * Compares this CSize with the specified CSize for equality.
-     *
-     * For two CSizes to be equal, both their width and height values
-     * must be equal.
-     *
-     * @param aSize The CSize to be compared with this CSize.
-     *
-     * @return  TRUE, if the sizes are equal,  FALSE otherwise.
-     */
-    inline bool32 operator==( const CSize& aSize ) const;
-
-    /**
-     * Compares this CSize with the specified CSize for inequality.
-     *
-     * For two CSize to be unequal, either their width or height values
-     * must be different.
-     *
-     * @param aSize The CSize to be compared with this CSize.
-     *
-     * @return  TRUE, if the sizes are different,  FALSE
-     *         otherwise.
-     */
-    inline bool32 operator!=( const CSize& aSize ) const;
-
-    /**
-     * CSize addition assignment operator.
-     *
-     * The operator adds the specified CSize to this CSize, and
-     * assigns the result back to this CSize.
-     *
-     * @param aSize The CSize to be added.
-     *
-     * @return A reference to this point object.
-     */
-    inline CSize& operator+=( const CSize& aSize );
-
-    /**
-     * CSize subtraction assignment operator.
-     *
-     * The operator substracts the specified CSize from this CSize,
-     * and assigns the result back to this CSize.
-     *
-     * @param aSize The CSize to be substracted.
-     *
-     * @return A reference to this point object.
-     */
-    inline CSize& operator-=( const CSize& aSize );
-
-    int32 mX; ///< The first dimension.
-    int32 mY; ///< The second dimension.
-    };
-
-/**
- * CSize addition operator.
- *
- * Calculates the sum of two CSize objects
- *
- * @param aLeftHandSide The left addend.
- * @param aRightHandSide The right addend.
- *
- * @return The sum.
- *
- */
-inline const CSize operator+( const CSize& aLeftHandSide,
-                              const CSize& aRightHandSide );
-
-/**
- * CSize substraction operator.
- *
- * Calculates the difference of two CSize objects
- *
- * @param aLeftHandSide The minuend.
- * @param aRightHandSide The subtrahend.
- *
- * @return The difference.
- *
- */
-inline const CSize operator-( const CSize& aLeftHandSide,
-                              const CSize& aRightHandSide );
-
-
-/**
- *  @class CPoint osntypes.h "osn/osntypes.h"
- *  Defines a two dimensional point data type.
- *
- *  @since S60 5.0
- *  @status Draft
- *  @interfaces CPoint
- */
-class CPoint
-    {
-public:
-    /**
-     * Default constructor, initializing the mX and mY members to zero.
-     */
-    inline CPoint(  );
-
-    /**
-     * Parameterized constructor.
-     *
-     * @param aX The first coordinate of the point.
-     * @param aY The second coordinate of the point.
-     */
-    inline CPoint( int32 aX, int32 aY );
-
-    /**
-     * Copy constructor.
-     *
-     * @param aPoint The point object to be copied.
-     */
-    inline CPoint( const CPoint& aPoint );
-
-    /**
-     * Gets a CSize whose width and height are the coordinates of this
-     * CPoint.
-     *
-     * @return The width and height of this CPoint converted to a size.
-     */
-    inline CSize AsSize();
-
-    /**
-     * Compares two points for equality.
-     *
-     * For two points to be equal, both their x and y coordinate values
-     * must be equal.
-     *
-     * @param aPoint The point to be compared with this point.
-     *
-     * @return  TRUE, if the points are equal,  FALSE otherwise.
-     */
-    inline bool32 operator==( const CPoint& aPoint ) const;
-
-    /**
-     * Compares two points for inequality.
-     *
-     * For two points to be unequal, either their x or their y
-     * coordinate values must be different.
-     *
-     * @param aPoint The point to be compared with this point.
-     *
-     * @return  TRUE, if the points are different,  FALSE
-     *         otherwise.
-     */
-    inline bool32 operator!=( const CPoint& aPoint ) const;
-
-    /**
-     * CPoint addition assignment operator.
-     *
-     * The operator adds the specified CPoint to this CPoint, and
-     * assigns the result back to this CPoint.
-     *
-     * @param aPoint The CPoint to be added.
-     *
-     * @return A reference to this point object.
-     */
-    inline CPoint& operator+=( const CPoint& aPoint );
-
-    /**
-     * CPoint subtraction assignment operator.
-     *
-     * The operator substracts the specified CPoint from this CPoint,
-     * and assigns the result back to this CPoint.
-     *
-     * @param aPoint The CPoint to be substracted.
-     *
-     * @return A reference to this point object.
-     */
-    inline CPoint& operator-=( const CPoint& aPoint );
-
-    int32 mX; ///< The x-coordinate position of the point.
-    int32 mY; ///< The y-coordinate position of the point.
-    };
-
-/**
- * CPoint addition operator.
- *
- * Calculates the sum of two CPoint objects
- *
- * @param aLeftHandSide The left addend.
- * @param aRightHandSide The right addend.
- *
- * @return The sum.
- *
- */
-inline const CPoint operator+( const CPoint& aLeftHandSide,
-                               const CPoint& aRightHandSide );
-
-/**
- * CPoint substraction operator.
- *
- * Calculates the difference of two CPoint objects
- *
- * @param aLeftHandSide The minuend.
- * @param aRightHandSide The subtrahend.
- *
- * @return The difference.
- *
- */
-inline const CPoint operator-( const CPoint& aLeftHandSide,
-                               const CPoint& aRightHandSide );
-
-/**
- *  @class CRect osntypes.h "osn/osntypes.h"
- *  Defines a two dimensional rectangle data type.
- *
- *  @since S60 5.0
- *  @status Draft
- *  @interfaces CRect
- */
-class CRect
-    {
-public:
-    /**
-     * Default constructor, initializing the coordinates of the top left
-     * corner and the size to ( 0,0 ).
-     */
-    inline CRect();
-
-    /**
-     * Parameterized constructor.
-     *
-     * @param aX The first coordinate of the rectangle's top left point.
-     * @param aY The second coordinate of the rectangle's top left
-     *           point.
-     * @param aWidth The width of the rectangle.
-     * @param aHeight The height of the rectangle.
-     */
-    inline CRect( int32 aX, int32 aY, int32 aWidth, int32 aHeight );
-
-    /**
-     * Parameterized constructor.
-     *
-     * Constructs the rectangle with a point ( top left corner ) and a
-     * size.
-     *
-     * @param aTopLeft The top left point of the rectangle.
-     * @param aSize The size of the rectangle.
-     */
-    inline CRect( const CPoint& aTopLeft, const CSize& aSize );
-
-    /**
-     * Parameterized constructor.
-     *
-     * Constructs the rectangle with a size. The top left corner is set
-     * to (0,0).
-     *
-     * @param aSize The size of the rectangle.
-     */
-    inline CRect( const CSize& aSize );
-
-    /**
-     * Copy constructor.
-     *
-     * @param aRect The rectangle object to be copied.
-     */
-    inline CRect( const CRect& aRect );
-
-    /**
-     * Determines whether the area covered by the rectangle is zero.
-     *
-     * @return  TRUE, if the rectangle is empty,  FALSE
-     *         otherwise.
-     */
-    inline bool32 IsEmpty() const;
-
-    /**
-     * Tests whether this rectangle overlaps with the specified
-     * rectangle.
-     *
-     * Two rectangles overlap if any point is located within both
-     * rectangles. There is no intersection if two adjacent sides touch
-     * without overlapping, or if either rectangle is empty.
-     *
-     * @param aRect The rectangle to compare with this rectangle for an
-     *              intersection.
-     *
-     * @return  TRUE, if the two rectangles overlap,  FALSE
-     *         otherwise.
-     */
-    inline bool32 Intersects( CRect aRect ) const;
-
-    /**
-     * Tests whether this normalized rectangle overlaps with the
-     * specified normalized rectangle.
-     *
-     * Two rectangles overlap if any point is located within both
-     * rectangles. There is no intersection if two adjacent sides touch
-     * without overlapping, or if either rectangle is empty.
-     * If one of the rectangles isn't normalized, then the function also
-     * returns  FALSE,
-     *
-     * Because of performance reasons this function should favored over
-     * the Intersects function, when it is certain that both rectangles
-     * are normalized.
-     *
-     * @param aRect The rectangle to compare with this rectangle for an
-     *              intersection.
-     *
-     * @return  TRUE, if the two rectangles are normalized and
-     *         overlap,  FALSE otherwise.
-     */
-    inline bool32 FastIntersects( const CRect& aRect ) const;
-
-    /**
-     * Gets the normalized area of intersection between this rectangle
-     * and the specified rectangle, and assigns it to this rectangle.
-     *
-     * If the two rectangles do not intersect, then, on return, this
-     * rectangle is set to be empty.
-     *
-     * @param aRect The rectangle to be used with this rectangle to get
-     *              the area of intersection.
-     */
-    inline void Intersection( CRect aRect );
-
-    /**
-     * Gets the normalized area of intersection between this normalized
-     * rectangle and the specified normalized rectangle, and assigns it
-     * to this rectangle.
-     *
-     * If the two rectangles do not intersect or are not normalized,
-     * then, on return, this rectangle is set to be empty.
-     *
-     * Because of performance reasons this function should be favored
-     * over the Intersection() function, when it is certain that both
-     * rectangles are normalized.
-     *
-     * @param aRect The rectangle to be used with this rectangle to get
-     *              the area of intersection.
-     */
-    inline void FastIntersection( const CRect& aRect );
-
-    /**
-     * Ensures that the rectangle's width and height have positive
-     * values.
-     *
-     * For example, if the rectangle's co-ordinates are such that the
-     * top is below the bottom, or the right hand side is to the left of
-     * the left hand side, normalisation swaps the co-ordinates of the
-     * top and bottom or of the left and right.
-     */
-    inline void Normalize();
-
-    /**
-     * Tests whether the rectangle is normalized.
-     *
-     * A rectangle is normalized, when its width and height are both
-     * greater than or equal to zero.
-     */
-    inline bool32 IsNormalized() const;
-
-    /**
-     * Compares two rectangles for equality.
-     *
-     * For two rectangles to be equal, the coordinates of their top left
-     * corners and their sizes must be equal.
-     *
-     * @param aRect The rectangle to compare with this rectangle.
-     *
-     * @return  TRUE, if the rectangles are equal,  FALSE
-     *         otherwise.
-     */
-    inline bool32 operator==( const CRect& aRect ) const;
-
-    /**
-     * Compares two rectangles for inequality.
-     *
-     * Two rectangles are unequal if the coordinates of their top left
-     * corners or their sizes differ.
-     *
-     * @param aRect The rectangle to compare with this rectangle.
-     *
-     * @return  TRUE, if the rectangles are different,  FALSE
-     *         otherwise.
-     */
-    inline bool32 operator!=( const CRect& aRect ) const;
-
-    /**
-     * CPoint addition assignment operator.
-     *
-     * The operator moves this CRect's offset by the given point's
-     * coordinates.
-     *
-     * @param aPoint The CPoint to be added.
-     *
-     * @return A reference to this rectangle object.
-     */
-    inline CRect& operator+=( const CPoint& aPoint );
-
-    /**
-     * CPoint subtraction assignment operator.
-     *
-     * The operator moves this CRect's offset by the given point's
-     * coordinates.
-     *
-     * @param aPoint The CPoint to be substracted.
-     *
-     * @return A reference to this rectangle object.
-     */
-    inline CRect& operator-=( const CPoint& aPoint );
-
-    /**
-     * CSize addition assignment operator.
-     *
-     * The operator increases this CRect's size by the given size.
-     *
-     * @param aSize The CSize to be added.
-     *
-     * @return A reference to this rectangle object.
-     */
-    inline CRect& operator+=( const CSize& aSize );
-
-    /**
-     * CSize subtraction assignment operator.
-     *
-     * The operator decreases this CRect's size by the given size.
-     *
-     * @param aSize The CSize to be substracted.
-     *
-     * @return A reference to this rectangle object.
-     */
-    inline CRect& operator-=( const CSize& aSize );
-
-    int32   mX;      ///< The position of the left-hand side of the
-    ///< rectangle.
-    int32   mY;      ///< The position of the top side of the rectangle.
-    int32   mWidth;  ///< The width of the rectangle.
-    int32   mHeight; ///< The height of the rectangle.
-    };
-
-/**
- * CRect + CPoint addition operator.
- *
- * The operator copies the CRect and moves the copy's offset by the given
- * point's coordinates.
- *
- * @param aRect The CRect addend.
- * @param aPoint The CPoint to be added.
- *
- * @return The moved CRect.
- *
- */
-inline const CRect operator+( const CRect& aRect,
-                              const CPoint& aPoint );
-
-/**
- * CRect - CPoint subtraction operator.
- *
- * The operator copies the CRect and moves the copy's offset by the
- * given point's coordinates.
- *
- * @param aRect The CRect addend.
- * @param aPoint The CPoint to be substracted.
- *
- * @return The moved CRect.
- *
- */
-inline const CRect operator-( const CRect& aRect,
-                              const CPoint& aPoint );
-
-/**
- * CRect + CSize addition operator.
- *
- * The operator copies the CRect and resizes the copy by the given size.
- *
- * @param aRect The CRect addend.
- * @param aSize The CSize to be added.
- *
- * @return The resized CRect.
- *
- * @ingroup Runtime
- */
-inline const CRect operator+( const CRect& aRect,
-                              const CSize& aSize );
-
-/**
- * CRect - CSize subtraction operator.
- *
- * The operator copies the CRect and resizes the copy by the given size.
- *
- * @param aRect The CRect minuend.
- * @param aSize The CSize to be substracted.
- *
- * @return The resized CRect.
- *
- * @ingroup Runtime
- */
-inline const CRect operator-( const CRect& aRect,
-                              const CSize& aSize );
-
-/**
-  * Defines maximum value for a int8 variable
-  */
-const int8 MAX_INT8      = 0x7f;
-
-/**
- * Defines minimum value for a int8 variable
- */
-const int8 MIN_INT8      = 0x80;
-
-/**
- * Defines maximum value for a uint8 variable
- */
-const uint8 MAX_UINT8    = 0xffu;
-
-/**
- * Defines maximum value for a int16 variable
- */
-const int16 MAX_INT16    = 0x7fff;
-
-/**
- * Defines minimum value for a int16 variable
- */
-const int16 MIN_INT16    = 0x8000;
-
-/**
- * Defines maximum value for a uint16 variable
- */
-const uint16 MAX_UINT16  = 0xffffu;
-
-/**
- * Defines maximum value for a int32 variable
- */
-const int32 MAX_INT32    = 0x7fffffff;
-
-/**
- * Defines minimum value for a int32 variable
- */
-const int32 MIN_INT32    = 0x80000000;
-
-/**
- * Defines maximum value for a uint32 variable
- */
-const uint32 MAX_UINT32  = 0xffffffffu;
-
-
-/**
- * Maximum path/filename length including a NULL terminator. A char16*
- * array of this size is guaranteed to accomodate all filenames returned
- * by the system.
- */
-const uint32 MAX_PATH_LENGTH = 257;
-
-/// Filename path delimiter.
-const char16 PATH_DELIMITER = '\\';
-
-/// Filename drive delimiter.
-const char16 DRIVE_DELIMITER = ':';
-
-/// Filename extension delimiter.
-const char16 EXTENSION_DELIMITER = '.';
-
-
-#include <osn/osntypes.inl>
-}
-#endif