source: branches/profile/GENOM_IMPORT/GenomeImport.h

Last change on this file was 7623, checked in by westram, 13 years ago
  • merge from dev [7450] [7452] [7456] [7457] [7458] [7459] [7460] [7461] [7464] [7465] [7466] [7467] [7468] [7469] [7482]
    • tweaked compiler options
      • activated -Weffc++
        • postfilter warnings where Scott Meyers' advices are too general.
          • base classes should not always have virtual destructors, since that renders tiny classes useless and
          • members should not always be initialized via initialization list, since that often violates the DRY principle
        • fix gcc's inability to detect that Noncopyable implements a private copy-ctor and op=
        • this slows down complete ARB recompilation by ~5%
    • added -Wold-style-cast (inactive)
    • removed -Wno-non-template-friend added in [7447]
  • postcompile.pl
    • added option —original to show unmodified compiler output
  • declared op= for classes which had a copy-ctor
  • moved op= macros to arbtools.h
  • derived classes containing pointers from Noncopyable (use Noncopyable virtually) or
  • made them copyable if needed (awt_mask_item, KnownDB, Code, AWT_registered_itemtype, GEN_gene, PosGene, PartialSequence, PlugIn, Range, Convaln_exception)
  • other related changes
    • user mask destruction working now
File size: 1.4 KB
Line 
1// ================================================================ //
2//                                                                  //
3//   File      : GenomeImport.h                                     //
4//   Purpose   : Genome flat file import                            //
5//                                                                  //
6//   Coded by Ralf Westram (coder@reallysoft.de) in November 2006   //
7//   Institute of Microbiology (Technical University Munich)        //
8//   http://www.arb-home.de/                                        //
9//                                                                  //
10// ================================================================ //
11#ifndef GENOMEIMPORT_H
12#define GENOMEIMPORT_H
13
14#ifndef ARBDB_BASE_H
15#include <arbdb_base.h>
16#endif
17
18class UniqueNameDetector;
19class AW_repeated_question;
20
21struct ImportSession : virtual Noncopyable { // valid during complete import of multiple files
22    GBDATA               *gb_species_data;
23    UniqueNameDetector   *und_species;                    // extended when creating new species
24    AW_repeated_question *ok_to_ignore_wrong_start_codon;
25
26    ImportSession(GBDATA *gb_species_data_, int estimated_genomes_count);
27    ~ImportSession();
28};
29
30
31GB_ERROR GI_importGenomeFile(ImportSession& session, const char *file_name, const char *ali_name);
32
33#else
34#error GenomeImport.h included twice
35#endif // GENOMEIMPORT_H
36
Note: See TracBrowser for help on using the repository browser.