imagingmodules/jp2kcodec/Src/JP2KImageData.cpp
branchRCL_3
changeset 4 3993b8f65362
parent 0 469c91dae73b
child 6 9ebf3284bc56
equal deleted inserted replaced
0:469c91dae73b 4:3993b8f65362
    61 // -----------------------------------------------------------------------------
    61 // -----------------------------------------------------------------------------
    62 //
    62 //
    63 TImageDataBlock* TJp2kComment::DuplicateL( CFrameImageData& aFrameImageData ) const
    63 TImageDataBlock* TJp2kComment::DuplicateL( CFrameImageData& aFrameImageData ) const
    64     {
    64     {
    65     TJp2kComment *jp2kComment = new ( ELeave ) TJp2kComment( *this );
    65     TJp2kComment *jp2kComment = new ( ELeave ) TJp2kComment( *this );
    66     CleanupDeletePushL( jp2kComment );
    66     //CleanupDeletePushL( jp2kComment );
       
    67     CleanupStack::PushL( jp2kComment );
    67 
    68 
    68     jp2kComment->iComment = jp2kComment->iComment->AllocLC();
    69     jp2kComment->iComment = jp2kComment->iComment->AllocLC();
       
    70     CleanupStack::PushL( jp2kComment->iComment );
    69 
    71 
    70     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kComment->iComment ) );
    72     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kComment->iComment ) );
    71     CleanupStack::Pop( 2 ); // jp2kComment and jp2kComment->iComment
    73     CleanupStack::Pop( 2 ); // jp2kComment and jp2kComment->iComment
    72 
    74 
    73     return jp2kComment;
    75     return jp2kComment;
    91 // -----------------------------------------------------------------------------
    93 // -----------------------------------------------------------------------------
    92 //
    94 //
    93 TImageDataBlock* TJp2kIprBox::DuplicateL( CFrameImageData& aFrameImageData ) const
    95 TImageDataBlock* TJp2kIprBox::DuplicateL( CFrameImageData& aFrameImageData ) const
    94     {
    96     {
    95     TJp2kIprBox *jp2kIprBox = new ( ELeave ) TJp2kIprBox( *this );
    97     TJp2kIprBox *jp2kIprBox = new ( ELeave ) TJp2kIprBox( *this );
    96     CleanupDeletePushL( jp2kIprBox );
    98     //CleanupDeletePushL( jp2kIprBox );
       
    99     CleanupStack::PushL( jp2kIprBox );
    97 
   100 
    98     jp2kIprBox->iIprData = jp2kIprBox->iIprData->AllocLC();
   101     jp2kIprBox->iIprData = jp2kIprBox->iIprData->AllocLC();
       
   102     CleanupStack::PushL( jp2kIprBox->iIprData );
    99 
   103 
   100     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kIprBox->iIprData ) );
   104     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kIprBox->iIprData ) );
   101     CleanupStack::Pop( 2 ); // jp2kIprBox and jp2kIprBox->iIprData
   105     CleanupStack::Pop( 2 ); // jp2kIprBox and jp2kIprBox->iIprData
   102 
   106 
   103     return jp2kIprBox;
   107     return jp2kIprBox;
   121 // -----------------------------------------------------------------------------
   125 // -----------------------------------------------------------------------------
   122 //
   126 //
   123 TImageDataBlock* TJp2kXmlBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   127 TImageDataBlock* TJp2kXmlBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   124     {
   128     {
   125     TJp2kXmlBox *jp2kXmlBox = new ( ELeave ) TJp2kXmlBox( *this );
   129     TJp2kXmlBox *jp2kXmlBox = new ( ELeave ) TJp2kXmlBox( *this );
   126     CleanupDeletePushL( jp2kXmlBox );
   130     //CleanupDeletePushL( jp2kXmlBox );
       
   131     CleanupStack::PushL(jp2kXmlBox);
   127 
   132 
   128     jp2kXmlBox->iXmlData = jp2kXmlBox->iXmlData->AllocLC();
   133     jp2kXmlBox->iXmlData = jp2kXmlBox->iXmlData->AllocLC();
       
   134     CleanupStack::PushL(jp2kXmlBox->iXmlData);
   129 
   135 
   130     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kXmlBox->iXmlData ) );
   136     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kXmlBox->iXmlData ) );
   131     CleanupStack::Pop( 2 ); // jp2kXmlBox and jp2kXmlBox->iXmlData
   137     CleanupStack::Pop( 2 ); // jp2kXmlBox and jp2kXmlBox->iXmlData
   132 
   138 
   133     return jp2kXmlBox;
   139     return jp2kXmlBox;
   152 // -----------------------------------------------------------------------------
   158 // -----------------------------------------------------------------------------
   153 //
   159 //
   154 TImageDataBlock* TJp2kUuidBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   160 TImageDataBlock* TJp2kUuidBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   155     {
   161     {
   156     TJp2kUuidBox *jp2kUuidBox = new ( ELeave ) TJp2kUuidBox( *this );
   162     TJp2kUuidBox *jp2kUuidBox = new ( ELeave ) TJp2kUuidBox( *this );
   157     CleanupDeletePushL( jp2kUuidBox );
   163     //CleanupDeletePushL( jp2kUuidBox );
       
   164     CleanupStack::PushL( jp2kUuidBox );
   158 
   165 
   159     jp2kUuidBox->iUuidData = jp2kUuidBox->iUuidData->AllocLC();
   166     jp2kUuidBox->iUuidData = jp2kUuidBox->iUuidData->AllocLC();
       
   167     CleanupStack::PushL( jp2kUuidBox->iUuidData );
   160 
   168 
   161     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidBox->iUuidData ) );
   169     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidBox->iUuidData ) );
   162     CleanupStack::Pop( 2 ); // jp2kUuidBox and jp2kUuidBox->iUuidData
   170     CleanupStack::Pop( 2 ); // jp2kUuidBox and jp2kUuidBox->iUuidData
   163 
   171 
   164     return jp2kUuidBox;
   172     return jp2kUuidBox;
   186 // -----------------------------------------------------------------------------
   194 // -----------------------------------------------------------------------------
   187 //
   195 //
   188 TImageDataBlock* TJp2kUuidInfoBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   196 TImageDataBlock* TJp2kUuidInfoBox::DuplicateL( CFrameImageData& aFrameImageData ) const
   189     {
   197     {
   190     TJp2kUuidInfoBox *jp2kUuidInfoBox = new ( ELeave ) TJp2kUuidInfoBox( *this );
   198     TJp2kUuidInfoBox *jp2kUuidInfoBox = new ( ELeave ) TJp2kUuidInfoBox( *this );
   191     CleanupDeletePushL( jp2kUuidInfoBox );
   199     //CleanupDeletePushL( jp2kUuidInfoBox );
       
   200     CleanupStack::PushL( jp2kUuidInfoBox );
   192 
   201 
   193     jp2kUuidInfoBox->iUuidInfoId = jp2kUuidInfoBox->iUuidInfoId->AllocLC();
   202     jp2kUuidInfoBox->iUuidInfoId = jp2kUuidInfoBox->iUuidInfoId->AllocLC();
       
   203     CleanupStack::PushL( jp2kUuidInfoBox->iUuidInfoId );
   194     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidInfoBox->iUuidInfoId ) );
   204     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidInfoBox->iUuidInfoId ) );
   195     CleanupStack::Pop( 1 ); // jp2kUuidInfoBox->iUuidInfoId
   205     CleanupStack::Pop( 1 ); // jp2kUuidInfoBox->iUuidInfoId
   196 
   206 
   197     jp2kUuidInfoBox->iUuidInfoData = jp2kUuidInfoBox->iUuidInfoData->AllocLC();
   207     jp2kUuidInfoBox->iUuidInfoData = jp2kUuidInfoBox->iUuidInfoData->AllocLC();
       
   208     CleanupStack::PushL( jp2kUuidInfoBox->iUuidInfoData );
   198     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidInfoBox->iUuidInfoData ) );
   209     User::LeaveIfError( aFrameImageData.AppendImageBuffer( jp2kUuidInfoBox->iUuidInfoData ) );
   199     CleanupStack::Pop( 2 ); // jp2kUuidInfoBox and jp2kUuidInfoBox->iUuidInfoData
   210     CleanupStack::Pop( 2 ); // jp2kUuidInfoBox and jp2kUuidInfoBox->iUuidInfoData
   200 
   211 
   201     return jp2kUuidInfoBox;
   212     return jp2kUuidInfoBox;
   202     }
   213     }