source: branches/NewStructure/src/DataArrays/AstroImage.hh @ 1455

Last change on this file since 1455 was 1414, checked in by MatthewWhiting, 10 years ago

Adding a SmartMask? class, and tidying up some of the code in DataArrayBase?.

File size: 920 bytes
Line 
1#ifndef DUCHAMP_ASTRO_IMAGE_H_
2#define DUCHAMP_ASTRO_IMAGE_H_
3
4#include <iostream>
5#include <duchamp/duchamp.hh>
6#include <duchamp/fitsHeader.hh>
7#include <duchamp/DataArrays/SmarkMask.hh>
8
9namespace duchamp
10{
11
12    enum PIXELSTATUS {AVAILABLE, DETECTED, BLANK, MW, NEW};
13
14    template <class T>
15    class AstroImage : public DataArrayBase<T>
16    {
17    public:
18        AstroImage();
19        AstroImage(const AstroImage& other);
20        AstroImage& operator= (const AstroImage& other);
21        virtual ~AstroImage(){};
22
23        FitsHeader *head(){return itsHeader;};
24        void setHeader(FitsHeader *head){itsHeader = head;};
25        DataArrayBase<PIXELSTATUS> *mask(){return itsMask;};
26
27        void readFromFITS(std::string fitsname);
28
29    protected:
30        FitsHeader *itsHeader; // use pointer so we can share across many AstroImages
31        SmartMask  *itsMask;   // use pointer so we can share across many AstroImages
32    };
33
34}
35
36#include <duchamp/DataArrays/AstroImage.tcc>
37
38#endif
Note: See TracBrowser for help on using the repository browser.