mmappcomponents/mmmtpdataprovider/inc/tobjectdescription.h
branchRCL_3
changeset 17 780c925249c1
parent 14 05b0d2323768
equal deleted inserted replaced
15:d240f0a77280 17:780c925249c1
    36     };
    36     };
    37 
    37 
    38 enum TGroupCodeType
    38 enum TGroupCodeType
    39     {
    39     {
    40     EGroupCodeGeneral    = 0x00000001,
    40     EGroupCodeGeneral    = 0x00000001,
       
    41     EGroupCodeSample     = 0x00000100,
    41     EGroupCodeMediaDB    = 0x00FF0000,
    42     EGroupCodeMediaDB    = 0x00FF0000,
    42     EGroupCodeNotDefined = 0xFFFFFFFF   // TODO: need to reconsider
    43     EGroupCodeNotDefined = 0xFFFFFFFF   // TODO: need to reconsider
    43     };
    44     };
    44 
    45 
    45 static const TGroupCodeType KSupportedGroupCode[] =
    46 static const TGroupCodeType KSupportedGroupCode[] =
    46     {
    47     {
    47     EGroupCodeGeneral,
    48     EGroupCodeGeneral,
       
    49     EGroupCodeSample,
    48     EGroupCodeMediaDB
    50     EGroupCodeMediaDB
    49     };
    51     };
    50 
    52 
    51 static const TObjectDescription KPropGroupMapTable[] =
    53 static const TObjectDescription KPropGroupMapTable[] =
    52     {
    54     {
    60         { EMTPObjectPropCodePersistentUniqueObjectIdentifier,
    62         { EMTPObjectPropCodePersistentUniqueObjectIdentifier,
    61                                               EGroupCodeGeneral },
    63                                               EGroupCodeGeneral },
    62         { EMTPObjectPropCodeNonConsumable,    EGroupCodeGeneral },
    64         { EMTPObjectPropCodeNonConsumable,    EGroupCodeGeneral },
    63 
    65 
    64         // The first group, addtional for all
    66         // The first group, addtional for all
       
    67         { EMTPObjectPropCodeName,             EGroupCodeGeneral },  // only for winlogo
    65         { EMTPObjectPropCodeDateCreated,      EGroupCodeGeneral },
    68         { EMTPObjectPropCodeDateCreated,      EGroupCodeGeneral },
    66         { EMTPObjectPropCodeDateModified,     EGroupCodeGeneral },
    69         { EMTPObjectPropCodeDateModified,     EGroupCodeGeneral },
    67 
    70 
    68         // The second group, additional for all
    71         // The first group, mandatory for video
    69         { EMTPObjectPropCodeName,             EGroupCodeMediaDB },
    72         { EMTPObjectPropCodeWidth,            EGroupCodeGeneral },  // only for winlogo
       
    73         { EMTPObjectPropCodeHeight,           EGroupCodeGeneral },  // only for winlogo
       
    74 
       
    75         // The second group, for non-embedded album art
       
    76         { EMTPObjectPropCodeRepresentativeSampleFormat, EGroupCodeGeneral }, // changed for winlogo
       
    77         { EMTPObjectPropCodeRepresentativeSampleSize,   EGroupCodeGeneral }, // changed for winlogo
       
    78         { EMTPObjectPropCodeRepresentativeSampleHeight, EGroupCodeGeneral }, // changed for winlogo
       
    79         { EMTPObjectPropCodeRepresentativeSampleWidth,  EGroupCodeGeneral }, // changed for winlogo
       
    80         { EMTPObjectPropCodeRepresentativeSampleData,   EGroupCodeGeneral }, // changed for winlogo
       
    81 
       
    82         // The third group, additional for all
    70         { EMTPObjectPropCodeDateAdded,        EGroupCodeMediaDB },
    83         { EMTPObjectPropCodeDateAdded,        EGroupCodeMediaDB },
    71 
    84 
    72         // The second group, mandatory for audio
    85         // The third group, mandatory for audio
    73         { EMTPObjectPropCodeArtist,           EGroupCodeMediaDB },
    86         { EMTPObjectPropCodeArtist,           EGroupCodeMediaDB },
    74         { EMTPObjectPropCodeTrack,            EGroupCodeMediaDB },
    87         { EMTPObjectPropCodeTrack,            EGroupCodeMediaDB },
    75         { EMTPObjectPropCodeGenre,            EGroupCodeMediaDB },
    88         { EMTPObjectPropCodeGenre,            EGroupCodeMediaDB },
    76         { EMTPObjectPropCodeAlbumName,        EGroupCodeMediaDB },
    89         { EMTPObjectPropCodeAlbumName,        EGroupCodeMediaDB },
    77         { EMTPObjectPropCodeSampleRate,       EGroupCodeMediaDB },
    90         { EMTPObjectPropCodeSampleRate,       EGroupCodeMediaDB },
    80         { EMTPObjectPropCodeAudioBitRate,     EGroupCodeMediaDB },
    93         { EMTPObjectPropCodeAudioBitRate,     EGroupCodeMediaDB },
    81         { EMTPObjectPropCodeDuration,         EGroupCodeMediaDB },
    94         { EMTPObjectPropCodeDuration,         EGroupCodeMediaDB },
    82         { EMTPObjectPropCodeOriginalReleaseDate, EGroupCodeMediaDB },
    95         { EMTPObjectPropCodeOriginalReleaseDate, EGroupCodeMediaDB },
    83         { EMTPObjectPropCodeDescription,      EGroupCodeMediaDB },
    96         { EMTPObjectPropCodeDescription,      EGroupCodeMediaDB },
    84         { EMTPObjectPropCodeComposer,         EGroupCodeMediaDB },
    97         { EMTPObjectPropCodeComposer,         EGroupCodeMediaDB },
       
    98         { EMTPObjectPropCodeAlbumArtist,      EGroupCodeMediaDB },
    85 
    99 
    86         // The second group, mandatory for video
   100         // The third group, mandatory for video
    87         { EMTPObjectPropCodeWidth,            EGroupCodeMediaDB },
       
    88         { EMTPObjectPropCodeHeight,           EGroupCodeMediaDB },
       
    89         { EMTPObjectPropCodeUseCount,         EGroupCodeMediaDB },
       
    90         { EMTPObjectPropCodeScanType,         EGroupCodeMediaDB },
   101         { EMTPObjectPropCodeScanType,         EGroupCodeMediaDB },
    91         { EMTPObjectPropCodeVideoFourCCCodec, EGroupCodeMediaDB },
   102         { EMTPObjectPropCodeVideoFourCCCodec, EGroupCodeMediaDB },
    92         { EMTPObjectPropCodeVideoBitRate,     EGroupCodeMediaDB },
   103         { EMTPObjectPropCodeVideoBitRate,     EGroupCodeMediaDB },
    93         { EMTPObjectPropCodeFramesPerThousandSeconds, EGroupCodeMediaDB },
   104         { EMTPObjectPropCodeFramesPerThousandSeconds, EGroupCodeMediaDB },
    94         { EMTPObjectPropCodeKeyFrameDistance, EGroupCodeMediaDB },
   105         { EMTPObjectPropCodeKeyFrameDistance, EGroupCodeMediaDB },
    95         { EMTPObjectPropCodeEncodingProfile,  EGroupCodeMediaDB },
   106         { EMTPObjectPropCodeEncodingProfile,  EGroupCodeMediaDB },
    96 
   107 
    97         // The second group, additional for video
   108         // The third group, additional for video
    98         { EMTPObjectPropCodeParentalRating,   EGroupCodeMediaDB },
   109         { EMTPObjectPropCodeParentalRating,   EGroupCodeMediaDB },
    99         { EMTPObjectPropCodeDRMStatus,        EGroupCodeMediaDB },
   110         { EMTPObjectPropCodeDRMStatus,        EGroupCodeMediaDB },
   100         { EMTPExtObjectPropCodeOmaDrmStatus,  EGroupCodeMediaDB }
   111         { EMTPExtObjectPropCodeOmaDrmStatus,  EGroupCodeMediaDB }
   101     };
   112     };
   102 
   113