source: branches/NewStructure/src/Catalogues/Catalogue.hh

Last change on this file was 1405, checked in by MatthewWhiting, 10 years ago

Adding Catalogue definition

File size: 1.1 KB
Line 
1#ifndef DUCHAMP_CATALOGUE_H_
2#define DUCHAMP_CATALOGUE_H_
3
4#include <iostream>
5#include <duchamp/Detection/detection.hh>
6#include <duchamp/Outputs/CatalogueSpecification.hh>
7#include <duchamp/Outputs/CasaAnnotationWriter.hh>
8#include <duchamp/Outputs/KarmaAnnotationWriter.hh>
9#include <duchamp/Outputs/DS9AnnotationWriter.hh>
10
11namespace duchamp
12{
13 
14    template <class T>  class Catalogue
15    {
16    public:
17        Catalogue();
18        Catalogue(Param &par);
19        Catalogue(const Catalogue& other);
20        Catalogue& operator= (const Catalogue& other);
21        virtual ~Catalogue();
22   
23        T operator()(size_t i){return itsMemberList.at(i);};
24        size_t size(){return itsMemberList.size();};
25
26        Catalogues::CatalogueSpecification &spec(){return itsSpecification;};
27        void setSpec(Catalogues::CatalogueSpecification spec){itsSpecification = spec;};
28   
29        void writeKarma();
30        void writeDS9();
31        void writeCasa();
32
33    protected:
34        std::vector<T> itsMemberList;
35        Catalogues::CatalogueSpecification itsSpecification;
36
37        KarmaAnnotationWriter itsKarmaWriter;
38        DS9AnnotationWriter itsDS9Writer;
39        CasaAnnotationWriter itsCasaWriter;
40
41    };
42
43
44}
45
46#endif
Note: See TracBrowser for help on using the repository browser.