Dali 3D User Interface Engine
pixel-data.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17 
18 // CLASS HEADER
19 #include "pixel-data.h"
20 
21 // EXTERNAL INLCUDES
22 #include <stdlib.h>
23 
24 namespace Dali
25 {
26 
27 PixelData::PixelData( unsigned char* buffer,
28  unsigned int width,
29  unsigned int height,
30  Pixel::Format pixelFormat,
31  ReleaseFunction releaseFunction )
32 : mBuffer( buffer ),
33  mWidth( width ),
34  mHeight( height ),
35  mPixelFormat( pixelFormat ),
36  mReleaseFunction( releaseFunction )
37 {
38 }
39 
41 {
42  if( mBuffer )
43  {
44  if( mReleaseFunction == FREE)
45  {
46  free( mBuffer );
47  }
48  else
49  {
50  delete[] mBuffer;
51  }
52  }
53  }
54 
55 PixelDataPtr PixelData::New(unsigned char* buffer,
56  unsigned int width,
57  unsigned int height,
58  Pixel::Format pixelFormat,
59  ReleaseFunction releaseFunction)
60 {
61  return new PixelData( buffer, width, height, pixelFormat, releaseFunction );
62 }
63 
64 unsigned int PixelData::GetWidth() const
65 {
66  return mWidth;
67 }
68 
69 unsigned int PixelData::GetHeight() const
70 {
71  return mHeight;
72 }
73 
75 {
76  return mPixelFormat;
77 }
78 
79 unsigned char* PixelData::GetBuffer() const
80 {
81  return mBuffer;
82 }
83 
84 } // namespace Dali
Dali Docs Home
Read more about Dali