source: 3DVCSoftware/branches/0.1-poznan-univ/source/Lib/TLibCommon/TComPicSym.h

Last change on this file was 2, checked in by hhi, 13 years ago

inital import

  • Property svn:eol-style set to native
File size: 2.3 KB
Line 
1
2
3/** \file     TComPicSym.h
4    \brief    picture symbol class (header)
5*/
6
7#ifndef __TCOMPICSYM__
8#define __TCOMPICSYM__
9
10
11// Include files
12#include "CommonDef.h"
13#include "TComSlice.h"
14#include "TComDataCU.h"
15
16// ====================================================================================================================
17// Class definition
18// ====================================================================================================================
19
20/// picture symbol class
21class TComPicSym
22{
23private:
24  UInt          m_uiWidthInCU;
25  UInt          m_uiHeightInCU;
26 
27  UInt          m_uiMaxCUWidth;
28  UInt          m_uiMaxCUHeight;
29  UInt          m_uiMinCUWidth;
30  UInt          m_uiMinCUHeight;
31 
32  UChar         m_uhTotalDepth;       ///< max. depth
33  UInt          m_uiNumPartitions;
34  UInt          m_uiNumPartInWidth;
35  UInt          m_uiNumPartInHeight;
36  UInt          m_uiNumCUsInFrame;
37 
38  TComSlice**   m_apcTComSlice;
39  UInt          m_uiNumAllocatedSlice;
40  TComDataCU**  m_apcTComDataCU;        ///< array of CU data
41 
42public:
43  Void        create  ( Int iPicWidth, Int iPicHeight, UInt uiMaxWidth, UInt uiMaxHeight, UInt uiMaxDepth );
44  Void        destroy ();
45 
46  TComPicSym  ()                        { m_uiNumAllocatedSlice = 0;            }
47  TComSlice*  getSlice(UInt i)          { return  m_apcTComSlice[i];            }
48  UInt        getFrameWidthInCU()       { return m_uiWidthInCU;                 }
49  UInt        getFrameHeightInCU()      { return m_uiHeightInCU;                }
50  UInt        getMinCUWidth()           { return m_uiMinCUWidth;                }
51  UInt        getMinCUHeight()          { return m_uiMinCUHeight;               }
52  UInt        getNumberOfCUsInFrame()   { return m_uiNumCUsInFrame;  }
53  TComDataCU*&  getCU( UInt uiCUAddr )  { return m_apcTComDataCU[uiCUAddr];     }
54 
55  Void        setSlice(TComSlice* p, UInt i) { m_apcTComSlice[i] = p;           }
56  UInt        getNumAllocatedSlice()    { return m_uiNumAllocatedSlice;         }
57  Void        allocateNewSlice();
58  Void        clearSliceBuffer();
59  UInt        getNumPartition()         { return m_uiNumPartitions;             }
60  UInt        getNumPartInWidth()       { return m_uiNumPartInWidth;            }
61  UInt        getNumPartInHeight()      { return m_uiNumPartInHeight;           }
62};// END CLASS DEFINITION TComPicSym
63
64
65#endif // __TCOMPICSYM__
66
Note: See TracBrowser for help on using the repository browser.