source: branches/ali/SL/AW_HELIX/AW_helix.hxx

Last change on this file was 19401, checked in by westram, 17 months ago
  • separate classes BI_helix + BI_pairdef.
  • fix client code.
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.7 KB
Line 
1// ==================================================================== //
2//                                                                      //
3//   File      : AW_helix.hxx                                           //
4//   Purpose   : Wrapper for BI_helix + AW-specific functions           //
5//                                                                      //
6//                                                                      //
7// Coded by Ralf Westram (coder@reallysoft.de) in December 2004         //
8// Copyright Department of Microbiology (Technical University Munich)   //
9//                                                                      //
10// Visit our web site at: http://www.arb-home.de/                       //
11//                                                                      //
12// ==================================================================== //
13#ifndef AW_HELIX_HXX
14#define AW_HELIX_HXX
15
16#ifndef BI_HELIX_HXX
17#include <BI_helix.hxx>
18#endif
19#ifndef AW_BASE_HXX
20#include <aw_base.hxx>
21#endif
22#ifndef CB_H
23#include <cb.h>
24#endif
25
26class AW_awar;
27
28class AW_helix : public BI_helix, public BI_pairdef { // derived from Noncopyable
29    long     enabled; // draw or not
30    AW_awar *awar_refresh;
31
32public:
33    AW_helix(AW_root *aw_root);
34
35    void setup_changed_cb(AW_root *aw_root); // forces update/refresh (auto-called from AWARs)
36
37    void add_callback(const RootCallback& cb) const;
38    void remove_callback(const RootCallback& cb) const;
39
40    char *seq_2_helix(char *sequence, char undefsymbol = ' ') const;
41    bool is_enabled() const { return (enabled != 0) && (size()>0); }
42};
43
44AW_window *create_helix_props_window(AW_root *awr);
45
46#else
47#error AW_helix.hxx included twice
48#endif // AW_HELIX_HXX
49
Note: See TracBrowser for help on using the repository browser.