casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
VisBufferComponents.h
Go to the documentation of this file.
00001 #if ! defined (MSVIS_VisBufferComponents_H)
00002 #define MSVIS_VisBufferComponents_H
00003 
00004 namespace casa {
00005 
00006 // <summary>
00007 //
00008 // This class encapsulates an enum with values corresponding to the various
00009 // data components accessible via a VisBuffer.  Its current usage is to
00010 // specify the VisBuffer components to be prefetched when asynchronous I/O
00011 // is in use or to specify the VisBuffer components that have been modified
00012 // when a Visibility Processing Framework bucket-brigade is operating on
00013 // a VisBuffer.  This implementation should be replaced by a C++11 when
00014 // the standard matures a bit.
00015 //
00016 // <prerequisite>
00017 //   <li> <linkto class="VisBuffer">VisBuffer</linkto>
00018 // </prerequisite>
00019 //
00020 // </summary>
00021 //
00022 // <synopsis>
00023 //
00024 // </synopsis>
00025 // <example>
00026 //
00027 // <code>
00028 //
00029 // </code>
00030 // </example>
00031 //
00032 class VisBufferComponents {
00033 
00034 public:
00035 
00036     typedef enum {
00037         Unknown=-1,
00038         AllBeamOffsetsZero,  // VisBufferAsync use only
00039         AntennaMounts,       // VisBufferAsync use only
00040         Ant1,
00041         Ant2,
00042         ArrayId,
00043         BeamOffsets,         // VisBufferAsync use only
00044         Channel,
00045         Cjones,
00046         CorrType,
00047         Corrected,
00048         CorrectedCube,
00049         DataDescriptionId,
00050         Direction1,
00051         Direction2,
00052         Exposure,
00053         Feed1,
00054         Feed1_pa,
00055         Feed2,
00056         Feed2_pa,
00057         FieldId,
00058         Flag,
00059         FlagCategory,
00060         FlagCube,
00061         FlagRow,
00062         Freq,
00063         ImagingWeight,
00064         Model,
00065         ModelCube,
00066         NChannel,
00067         NCorr,
00068         NRow,
00069         ObservationId,
00070         Observed,
00071         ObservedCube,
00072         PhaseCenter,
00073         PolFrame,
00074         ProcessorId,
00075         ReceptorAngles,       // VisBufferAsync use only
00076         Scan,
00077         Sigma,
00078         SigmaMat,
00079         SpW,
00080         StateId,
00081         Time,
00082         TimeCentroid,
00083         TimeInterval,
00084         Weight,
00085         WeightMat,
00086         WeightSpectrum,
00087         Uvw,
00088         UvwMat,
00089         N_VisBufferComponents // must be last
00090     } EnumType;
00091 
00092 
00093 };
00094 
00095 }
00096 #endif // ! defined (MSVIS_VisBufferComponents_H)
00097