NCBI C++ ToolKit
cuSeqTreeLayout.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: cuSeqTreeLayout.hpp 51242 2011-09-15 14:35:39Z lanczyck $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Author: Charlie Liu
27  *
28  * File Description:
29  * Define the interface to lay out a phylogenetic tree view.
30  */
31 
32 #ifndef CU_SEQTREE_LAYOUT_HPP
33 #define CU_SEQTREE_LAYOUT_HPP
34 
36 
39 BEGIN_SCOPE(cd_utils)
40 
42 {
43 public:
44  virtual ~SeqTreeLayout() {};
45  virtual void calculateNodePositions(SeqTree& treeData, int maxX, int maxY)=0;
46  virtual SeqTree::iterator findEdgeEnd(SeqTree& treeData, int x, int y, int edgeWidth)=0;
47  virtual void getSize(int& x, int& y)=0;
48 };
49 
50 END_SCOPE(cd_utils)
52 #endif
virtual ~SeqTreeLayout()
virtual void calculateNodePositions(SeqTree &treeData, int maxX, int maxY)=0
virtual void getSize(int &x, int &y)=0
virtual SeqTree::iterator findEdgeEnd(SeqTree &treeData, int x, int y, int edgeWidth)=0
USING_SCOPE(objects)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define END_SCOPE(ns)
End the previously defined scope.
Definition: ncbistl.hpp:75
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define BEGIN_SCOPE(ns)
Define a new scope.
Definition: ncbistl.hpp:72
#define NCBI_CDUTILS_EXPORT
Definition: ncbi_export.h:376
Modified on Sun Apr 21 03:44:51 2024 by modify_doxy.py rev. 669887