sensorservices/sensorserver/src/util/sensrvchannelinfo.cpp
changeset 0 4e1aa6a622a0
child 83 11da52d4c847
equal deleted inserted replaced
-1:000000000000 0:4e1aa6a622a0
       
     1 /*
       
     2 * Copyright (c) 2006-2008 Nokia Corporation and/or its subsidiary(-ies). 
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  The channel basic information
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #include <sensrvchannelinfo.h>
       
    20 #include "sensrvtrace.h"
       
    21 
       
    22 
       
    23 // Tracing macro for channel info contents
       
    24 #ifdef API_TRACE_DEBUG    
       
    25 #define _TRACE_CHANNEL_INFO_ \
       
    26 TBuf<KSensrvLocationLength> location;\
       
    27 location.Copy(iLocation);\
       
    28 TBuf<KSensrvVendorIdLength> vendor;\
       
    29 vendor.Copy(iVendorId);\
       
    30 API_TRACE(( _L("Sensor Util - TSensrvChannelInfo::TSensrvChannelInfo - iChannelId=%d, iContextType=%d, iQuantity=%d, iChannelType=%d, iLocation=%S, iVendorId=%S, iDataItemSize=%d, iChannelDataTypeId=%d, iReserved=%d"),iChannelId,iContextType,iQuantity,iChannelType,&location,&vendor,iDataItemSize,iChannelDataTypeId,iReserved)); 
       
    31 #else
       
    32 #define _TRACE_CHANNEL_INFO_
       
    33 #endif
       
    34 
       
    35 
       
    36 // ======== MEMBER FUNCTIONS ========
       
    37 
       
    38 // ---------------------------------------------------------------------------
       
    39 // TSensrvChannelInfo::TSensrvChannelInfo()
       
    40 // ---------------------------------------------------------------------------
       
    41 //
       
    42 EXPORT_C TSensrvChannelInfo::TSensrvChannelInfo() :
       
    43     iChannelId( 0 ),
       
    44     iContextType( 0 ),
       
    45     iQuantity( 0 ), 
       
    46     iChannelType( 0 ),
       
    47     iDataItemSize( 0 ),
       
    48     iReserved3( 0 ),
       
    49     iChannelDataTypeId( 0 ),
       
    50     iReserved( 0 ),
       
    51     iReserved2( 0 )
       
    52     {
       
    53     _TRACE_CHANNEL_INFO_
       
    54     }
       
    55 
       
    56 // ---------------------------------------------------------------------------
       
    57 // TSensrvChannelInfo::TSensrvChannelInfo()
       
    58 // ---------------------------------------------------------------------------
       
    59 //
       
    60 EXPORT_C TSensrvChannelInfo::TSensrvChannelInfo( TInt aContextType, 
       
    61                                                  TInt aQuantity, 
       
    62                                                  TSensrvChannelTypeId aChannelType,
       
    63                                                  const TDesC8& aLocation,
       
    64                                                  const TDesC8& aVendorId,
       
    65                                                  TSensrvChannelDataTypeId aChannelDataTypeId ) 
       
    66     : iChannelId( 0 ), 
       
    67       iContextType( aContextType ), 
       
    68       iQuantity( aQuantity ),
       
    69       iChannelType( aChannelType ), 
       
    70       iLocation( aLocation ),
       
    71       iVendorId( aVendorId ),
       
    72       iDataItemSize( 0 ),
       
    73       iReserved3( 0 ),
       
    74       iChannelDataTypeId( aChannelDataTypeId ),
       
    75       iReserved( 0 ),
       
    76       iReserved2( 0 )
       
    77     {
       
    78     _TRACE_CHANNEL_INFO_
       
    79     } 
       
    80     
       
    81 // ---------------------------------------------------------------------------
       
    82 // TSensrvChannelInfo::TSensrvChannelInfo()
       
    83 // ---------------------------------------------------------------------------
       
    84 //
       
    85 EXPORT_C TSensrvChannelInfo::TSensrvChannelInfo( TSensrvChannelId aChannelId, 
       
    86                                                  TInt aContextType, 
       
    87                                                  TInt aQuantity, 
       
    88                                                  TSensrvChannelTypeId aChannelType,
       
    89                                                  const TDesC8& aLocation,
       
    90                                                  const TDesC8& aVendorId, 
       
    91                                                  TInt aDataItemSize,
       
    92                                                  TSensrvChannelDataTypeId aChannelDataTypeId ) 
       
    93     : iChannelId( aChannelId ), 
       
    94       iContextType( aContextType ), 
       
    95       iQuantity( aQuantity ),
       
    96       iChannelType( aChannelType ), 
       
    97       iLocation( aLocation ),
       
    98       iVendorId( aVendorId ),
       
    99       iDataItemSize( aDataItemSize ),
       
   100       iReserved3( 0 ),
       
   101       iChannelDataTypeId( aChannelDataTypeId ),
       
   102       iReserved( 0 ),
       
   103       iReserved2( 0 )
       
   104     {
       
   105     _TRACE_CHANNEL_INFO_
       
   106     } 
       
   107 
       
   108 // ---------------------------------------------------------------------------
       
   109 // TSensrvChannelInfo::TSensrvChannelInfo()
       
   110 // ---------------------------------------------------------------------------
       
   111 //
       
   112 EXPORT_C TSensrvChannelInfo::TSensrvChannelInfo( const TSensrvChannelInfo& aChannelInfo ) 
       
   113     : iChannelId( aChannelInfo.iChannelId ), 
       
   114       iContextType( aChannelInfo.iContextType ), 
       
   115       iQuantity( aChannelInfo.iQuantity ), 
       
   116       iChannelType( aChannelInfo.iChannelType ), 
       
   117       iLocation( aChannelInfo.iLocation ), 
       
   118       iVendorId( aChannelInfo.iVendorId ),
       
   119       iDataItemSize( aChannelInfo.iDataItemSize ),
       
   120       iReserved3( 0 ),
       
   121       iChannelDataTypeId( aChannelInfo.iChannelDataTypeId ),
       
   122       iReserved( 0 ),
       
   123       iReserved2( 0 )
       
   124     {
       
   125     _TRACE_CHANNEL_INFO_
       
   126     } 
       
   127 
       
   128 // ---------------------------------------------------------------------------
       
   129 // TSensrvChannelInfo::IsMatch()
       
   130 // ---------------------------------------------------------------------------
       
   131 //
       
   132 EXPORT_C TBool TSensrvChannelInfo::IsMatch( const TSensrvChannelInfo &aInfo ) const
       
   133     {
       
   134     API_TRACE( ( _L( "Sensor Util - TSensrvChannelInfo::IsMatch()" ) ) );
       
   135                 
       
   136     if ( aInfo.iContextType           && aInfo.iContextType != iContextType ) 
       
   137         { return EFalse; }
       
   138     if ( aInfo.iQuantity              && aInfo.iQuantity    != iQuantity )    
       
   139         { return EFalse; }
       
   140     if ( aInfo.iChannelType           && aInfo.iChannelType != iChannelType ) 
       
   141         { return EFalse; }
       
   142     if ( aInfo.iLocation.Length() > 0 && aInfo.iLocation    != iLocation )    
       
   143         { return EFalse; }
       
   144     if ( aInfo.iVendorId.Length() > 0 && aInfo.iVendorId    != iVendorId )    
       
   145         { return EFalse; }
       
   146     if ( aInfo.iChannelDataTypeId     && aInfo.iChannelDataTypeId != iChannelDataTypeId )  
       
   147         { return EFalse; } 
       
   148         
       
   149     API_TRACE( ( _L( "Sensor Util - TSensrvChannelInfo::IsMatch - return ETrue" ) ) );    
       
   150     return ETrue;
       
   151     }
       
   152    
       
   153 // ---------------------------------------------------------------------------
       
   154 // TSensrvChannelInfo::IsComplete()
       
   155 // ---------------------------------------------------------------------------
       
   156 //
       
   157 EXPORT_C TBool TSensrvChannelInfo::IsComplete() const
       
   158     {
       
   159     API_TRACE( ( _L( "Sensor Util - TSensrvChannelInfo::IsComplete()" ) ) );
       
   160     
       
   161     if ( !iContextType )       { return EFalse; }
       
   162     if ( !iQuantity )          { return EFalse; }
       
   163     if ( !iChannelType )       { return EFalse; }
       
   164     if ( !iLocation.Length() ) { return EFalse; }
       
   165     if ( !iVendorId.Length() ) { return EFalse; }
       
   166     if ( !iChannelDataTypeId ) { return EFalse; }
       
   167     
       
   168     API_TRACE( ( _L( "Sensor Util - TSensrvChannelInfo::IsComplete return ETrue" ) ) );
       
   169     return ETrue;
       
   170     }
       
   171     
       
   172 // End of file