summaryrefslogtreecommitdiffstats
path: root/tksao
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-10-25 19:40:21 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-10-25 19:40:21 (GMT)
commit6ef82e9a53d814b4c9d136ee689ff3b73156ea58 (patch)
treea657e0c3ca08373c9c6800aa1e1582b216594fa0 /tksao
parent875058d1eff7b5daac504b32a08dba62cc3c56e1 (diff)
downloadblt-6ef82e9a53d814b4c9d136ee689ff3b73156ea58.zip
blt-6ef82e9a53d814b4c9d136ee689ff3b73156ea58.tar.gz
blt-6ef82e9a53d814b4c9d136ee689ff3b73156ea58.tar.bz2
new mask
Diffstat (limited to 'tksao')
-rwxr-xr-xtksao/configure1
-rw-r--r--tksao/configure.ac1
-rw-r--r--tksao/frame/frame.C347
-rw-r--r--tksao/frame/frameload.C367
4 files changed, 369 insertions, 347 deletions
diff --git a/tksao/configure b/tksao/configure
index c0928a3..74ee0c1 100755
--- a/tksao/configure
+++ b/tksao/configure
@@ -5762,6 +5762,7 @@ frame/fitsnrrd.C
frame/fr3dcommand.C
frame/fr3dmap.C
frame/frame.C
+frame/frameload.C
frame/frame3d.C
frame/frame3dbase.C
frame/frame3dtruecolor16.C
diff --git a/tksao/configure.ac b/tksao/configure.ac
index cde9ae8..2e565e0 100644
--- a/tksao/configure.ac
+++ b/tksao/configure.ac
@@ -191,6 +191,7 @@ frame/fitsnrrd.C
frame/fr3dcommand.C
frame/fr3dmap.C
frame/frame.C
+frame/frameload.C
frame/frame3d.C
frame/frame3dbase.C
frame/frame3dtruecolor16.C
diff --git a/tksao/frame/frame.C b/tksao/frame/frame.C
index 3cfff17..ad19c7d 100644
--- a/tksao/frame/frame.C
+++ b/tksao/frame/frame.C
@@ -853,350 +853,3 @@ void Frame::savePhotoCmd(const char* ph)
return;
}
}
-
-// *** Fits ***
-
-void Frame::loadFitsAllocCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsAllocCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsAlloc(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(ALLOC, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsAllocGZCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsAllocGZCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsAllocGZ(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(ALLOCGZ, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsChannelCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsChannelCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsChannel(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(CHANNEL, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsMMapCmd(const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsMMapCmd(fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsMMap(cc, interp, fn, 1);
- loadDone(cc->load(MMAP, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsSMMapCmd(const char* hdr, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsSMMapCmd(hdr, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsSMMap(cc, interp, hdr, fn, 1);
- loadDone(cc->load(SMMAP, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsMMapIncrCmd(const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsMMapIncrCmd(fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsMMapIncr(cc, interp, fn, 1);
- loadDone(cc->load(MMAPINCR, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsShareCmd(ShmType stype, int id, const char* fn,
- LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsShareCmd(stype, id, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsShare(cc, interp,
- stype, id, fn, 1);
- loadDone(cc->load(SHARE, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsSShareCmd(ShmType stype, int hdr, int id, const char* fn,
- LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsSShareCmd(stype, hdr, id, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsSShare(cc, interp,
- stype, hdr, id, fn, 1);
- loadDone(cc->load(SSHARE, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsSocketCmd(int s, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsSocketCmd(s, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsSocket(cc, interp,
- s, fn, FitsFile::FLUSH, 1);
- loadDone(cc->load(SOCKET, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsSocketGZCmd(int s, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsSocketGZCmd(s, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsSocketGZ(cc, interp,
- s, fn, FitsFile::FLUSH, 1);
- loadDone(cc->load(SOCKETGZ, fn, img));
- break;
- }
-}
-
-void Frame::loadFitsVarCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadFitsVarCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageFitsVar(cc, interp, ch, fn, 1);
- loadDone(cc->load(VAR, fn, img));
- break;
- }
-}
-
-// *** Array ***
-
-void Frame::loadArrAllocCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrAllocCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrAlloc(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(ALLOC, fn, img));
- break;
- }
-}
-
-void Frame::loadArrAllocGZCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrAllocGZCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrAllocGZ(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(ALLOCGZ, fn, img));
- break;
- }
-}
-
-void Frame::loadArrChannelCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrChannelCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrChannel(cc, interp,
- ch, fn, FitsFile::NOFLUSH, 1);
- loadDone(cc->load(CHANNEL, fn, img));
- break;
- }
-}
-
-void Frame::loadArrMMapCmd(const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrMMapCmd(fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrMMap(cc, interp, fn, 1);
- loadDone(cc->load(MMAP, fn, img));
- break;
- }
-}
-
-void Frame::loadArrMMapIncrCmd(const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrMMapIncrCmd(fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrMMapIncr(cc, interp, fn, 1);
- loadDone(cc->load(MMAPINCR, fn, img));
- break;
- }
-}
-
-void Frame::loadArrShareCmd(ShmType stype, int id, const char* fn,
- LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrShareCmd(stype, id, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrShare(cc, interp, stype, id, fn, 1);
- loadDone(cc->load(SHARE, fn, img));
- break;
- }
-}
-
-void Frame::loadArrSocketCmd(int s, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrSocketCmd(s, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrSocket(cc, interp,
- s, fn, FitsFile::FLUSH, 1);
- loadDone(cc->load(SOCKET, fn, img));
- break;
- }
-}
-
-void Frame::loadArrSocketGZCmd(int s, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrSocketGZCmd(s, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrSocketGZ(cc, interp,
- s, fn, FitsFile::FLUSH, 1);
- loadDone(cc->load(SOCKETGZ, fn, img));
- break;
- }
-}
-
-void Frame::loadArrVarCmd(const char* ch, const char* fn, LayerType ll)
-{
- switch (ll) {
- case IMG:
- Base::loadArrVarCmd(ch, fn, ll);
- break;
- case MASK:
- FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
- mask.append(msk);
- Context* cc = msk->context();
- FitsImage* img = new FitsImageArrVar(cc, interp, ch, fn, 1);
- loadDone(cc->load(VAR, fn, img));
- break;
- }
-}
-
-void Frame::loadDone(int rr)
-{
- if (rr)
- updateMaskMatrices();
- Base::loadDone(rr);
-}
-
diff --git a/tksao/frame/frameload.C b/tksao/frame/frameload.C
new file mode 100644
index 0000000..db15456
--- /dev/null
+++ b/tksao/frame/frameload.C
@@ -0,0 +1,367 @@
+// Copyright (C) 1999-2018
+// Smithsonian Astrophysical Observatory, Cambridge, MA, USA
+// For conditions of distribution and use, see copyright notice in "copyright"
+
+#include <tkInt.h>
+
+#include "frame.h"
+#include "fitsimage.h"
+#include "fitsmask.h"
+
+#include "alloc.h"
+#include "allocgz.h"
+#include "channel.h"
+#include "mmap.h"
+#include "mmapincr.h"
+#include "share.h"
+#include "sshare.h"
+#include "socket.h"
+#include "socketgz.h"
+#include "var.h"
+
+// *** Fits ***
+
+void Frame::loadFitsAllocCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsAllocCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsAlloc(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(ALLOC, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsAllocGZCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsAllocGZCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsAllocGZ(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(ALLOCGZ, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsChannelCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsChannelCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsChannel(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(CHANNEL, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsMMapCmd(const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsMMapCmd(fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsMMap(cc, interp, fn, 1);
+ loadDone(cc->load(MMAP, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsSMMapCmd(const char* hdr, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsSMMapCmd(hdr, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsSMMap(cc, interp, hdr, fn, 1);
+ loadDone(cc->load(SMMAP, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsMMapIncrCmd(const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsMMapIncrCmd(fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsMMapIncr(cc, interp, fn, 1);
+ loadDone(cc->load(MMAPINCR, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsShareCmd(ShmType stype, int id, const char* fn,
+ LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsShareCmd(stype, id, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsShare(cc, interp,
+ stype, id, fn, 1);
+ loadDone(cc->load(SHARE, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsSShareCmd(ShmType stype, int hdr, int id, const char* fn,
+ LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsSShareCmd(stype, hdr, id, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsSShare(cc, interp,
+ stype, hdr, id, fn, 1);
+ loadDone(cc->load(SSHARE, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsSocketCmd(int s, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsSocketCmd(s, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsSocket(cc, interp,
+ s, fn, FitsFile::FLUSH, 1);
+ loadDone(cc->load(SOCKET, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsSocketGZCmd(int s, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsSocketGZCmd(s, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsSocketGZ(cc, interp,
+ s, fn, FitsFile::FLUSH, 1);
+ loadDone(cc->load(SOCKETGZ, fn, img));
+ break;
+ }
+}
+
+void Frame::loadFitsVarCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadFitsVarCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageFitsVar(cc, interp, ch, fn, 1);
+ loadDone(cc->load(VAR, fn, img));
+ break;
+ }
+}
+
+// *** Array ***
+
+void Frame::loadArrAllocCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrAllocCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrAlloc(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(ALLOC, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrAllocGZCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrAllocGZCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrAllocGZ(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(ALLOCGZ, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrChannelCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrChannelCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrChannel(cc, interp,
+ ch, fn, FitsFile::NOFLUSH, 1);
+ loadDone(cc->load(CHANNEL, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrMMapCmd(const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrMMapCmd(fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrMMap(cc, interp, fn, 1);
+ loadDone(cc->load(MMAP, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrMMapIncrCmd(const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrMMapIncrCmd(fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrMMapIncr(cc, interp, fn, 1);
+ loadDone(cc->load(MMAPINCR, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrShareCmd(ShmType stype, int id, const char* fn,
+ LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrShareCmd(stype, id, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrShare(cc, interp, stype, id, fn, 1);
+ loadDone(cc->load(SHARE, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrSocketCmd(int s, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrSocketCmd(s, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrSocket(cc, interp,
+ s, fn, FitsFile::FLUSH, 1);
+ loadDone(cc->load(SOCKET, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrSocketGZCmd(int s, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrSocketGZCmd(s, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrSocketGZ(cc, interp,
+ s, fn, FitsFile::FLUSH, 1);
+ loadDone(cc->load(SOCKETGZ, fn, img));
+ break;
+ }
+}
+
+void Frame::loadArrVarCmd(const char* ch, const char* fn, LayerType ll)
+{
+ switch (ll) {
+ case IMG:
+ Base::loadArrVarCmd(ch, fn, ll);
+ break;
+ case MASK:
+ FitsMask* msk = new FitsMask(this, maskColorName, maskMark);
+ mask.append(msk);
+ Context* cc = msk->context();
+ FitsImage* img = new FitsImageArrVar(cc, interp, ch, fn, 1);
+ loadDone(cc->load(VAR, fn, img));
+ break;
+ }
+}
+
+void Frame::loadDone(int rr)
+{
+ if (rr)
+ updateMaskMatrices();
+ Base::loadDone(rr);
+}
+