Statistics
| Revision:

svn-gvsig-desktop / tags / v1_0_2_Build_904 / libraries / libjni-ecw / include / NCSJPCNodeTiler.h @ 43469

History | View | Annotate | Download (2.87 KB)

1
/********************************************************
2
** Copyright 2003 Earth Resource Mapping Ltd.
3
** This document contains proprietary source code of
4
** Earth Resource Mapping Ltd, and can only be used under
5
** one of the three licenses as described in the 
6
** license.txt file supplied with this distribution. 
7
** See separate license.txt file for license details 
8
** and conditions.
9
**
10
** This software is covered by US patent #6,442,298,
11
** #6,102,897 and #6,633,688.  Rights to use these patents 
12
** is included in the license agreements.
13
**
14
** FILE:     $Archive: /NCS/Source/include/NCSJPCSubBand.h $
15
** CREATED:  13/02/2003 3:27:34 PM
16
** AUTHOR:   Simon Cope
17
** PURPOSE:  CNCSJPCSubBand class header
18
** EDITS:    [xx] ddMmmyy NAME COMMENTS
19
 *******************************************************/
20

    
21
#ifndef NCSJPCNODETILER_H
22
#define NCSJPCNODETILER_H
23

    
24
#ifndef NCSJPCNODE_H
25
#include "NCSJPCNode.h"
26
#endif // NCSJPCNODE_H
27

    
28
        /**
29
         * CNCSJPCNodeTiler class - manages tiled Nodes.
30
         * 
31
         * @author       Simon Cope
32
         * @version      $Revision: 3538 $ $Author: nacho $ $Date: 2006-01-09 12:56:54 +0100 (Mon, 09 Jan 2006) $ 
33
         */        
34
class NCSJPC_EXPORT_ALL CNCSJPCNodeTiler: public CNCSJPCNode {
35
public:
36
                /** 
37
                 * Constructor 
38
                 */
39
        CNCSJPCNodeTiler();
40
                /** Virtual destructor */
41
        virtual ~CNCSJPCNodeTiler();
42

    
43
                /** 
44
                 * Get normal Node Width.
45
                 * @return      INT32                Un-clipped Width of codeblocks.
46
                 */
47
        virtual UINT32 GetNodeWidth(UINT16 iComponent = 0) = 0;
48
                /** 
49
                 * Get normal Node Height.
50
                 * @return      INT32                Un-clipped height of codeblocks.
51
                 */
52
        virtual UINT32 GetNodeHeight(UINT16 iComponent = 0) = 0;
53
                /** 
54
                 * Get number of nodes wide.
55
                 * @return      INT32                Nr of codeblocks across.
56
                 */
57
        virtual UINT32 GetNumNodesWide(UINT16 iComponent = 0) = 0;
58
                /** 
59
                 * Get number of nodes high.
60
                 * @return      INT32                Nr of codeblocks high.
61
                 */
62
        virtual UINT32 GetNumNodesHigh(UINT16 iComponent = 0) = 0;
63
                /** 
64
                 * Get pointer to specific node.
65
                 * @param                UINT32                Node nr
66
                 * @return      CNCSJPCNode * Ptr to node.
67
                 */
68
        virtual CNCSJPCNode *GetNodePtr(UINT32 nNode, UINT16 iComponent = 0) = 0;
69
                /** 
70
                 * UnLink a node as the unput to this node.
71
                 * @param                nCtx                Read context
72
                 * @return      bool                true on success, else false on error.
73
                 */
74
        virtual bool UnLink(ContextID nCtx, UINT16 nInputs = 0);
75

    
76
                /** 
77
                 * Read a BufferType line from the input.
78
                 * @param                nCtx                Read context
79
                 * @param                pDst                Destination buffer.
80
                 * @param                iComponent        Output Component
81
                 * @return      bool                true on succes, else false.
82
                 */
83
        virtual bool ReadLine(ContextID nCtx, CNCSJPCBuffer *pDst, UINT16 iComponent);
84
                /** 
85
                 * Write a BufferType line to the output.
86
                 * @param                nCtx                Context
87
                 * @param                pSrc                Source buffer.
88
                 * @param                iComponent        Output Component
89
                 * @return      bool                true on succes, else false.
90
                 */
91
        virtual bool WriteLine(ContextID nCtx, CNCSJPCBuffer *pSrc, UINT16 iComponent);
92
protected:
93
        Context        *m_pCtx;
94
};
95

    
96
#endif // !NCSJPCNODETILER_H