The functions in this class access the specified data in the antenna data area, and may convert the units and data types so something more suitable for general use. They also interpret the data and provide some derived quantities eg., the padName function.
ByteSource VLARecord(...); Block<VLAADA> adaBlock; VLARCA rca(VLARecord); const uInt nant = rca.nAntennas(); adaBlock.resize(nant); for (uInt a = 0; a < nant; a++) { adaBlock[a].attach(VLARecord, rca.ADAOffset(a)); cout << "Antenna " << adaBlock[a].antName() << " is on pad " << adaBlock[a].padName() << endl; }
Construct this object to read data from the specified VLA logical record. The antenna data area that will be used begins at the specified number of bytes from the beginning of the record.
The destructor is trivial.
The copy constructor uses reference semantics.
The assignment constructor uses reference semantics.
Re-initialise this object so that it now reads data from the given VLA logical record. The antenna data area that will be used begins at the specified number of bytes from the beginning of the record.
return the antenna name. This is a string version of the antenna id n is a one or two digit number that contains the antenna identifier (see below).
returns the antenna Id. This is a number which stays with the "steel" and gets moved to new locations. It is not the pad number. It is between 1 and 28 inclusive.
return the pad name that this antenna is currently located on. This is obtained by knowing where the pads are and looking at the bx position of the antenna (the bx position in the logical record has to be within half a meter of the value given in an table). Pad names are of the form "Nn" or "En" or "Wn" where n is a one or two digit number that has an approximate correspondence with the distance of the pad from the centre of the array.
return the u coordinate in meters of this antenna at the centre of the integration.
return the v coordinate in meters of this antenna at the centre of the integration.
return the w coordinate in meters of this antenna at the centre of the integration.
return the Bx position in meters of this antenna, from the centre of the Array.
return the By position in meters of this antenna, from the centre of the Array.
return the Bz position in meters of this antenna, from the centre of the Array.
return the bx, by, bz positions in meters of this antenna, from the centre of the Array.
return the IF status. The status indicates how bad the data probably is for the specified if and the current antenna. Values of zero indicate the IF is OK, 1 is a warning, 2 means not so good, and bigger numbers, up to 15 mean the IF is successively worse.
returns the nominal sensitivity of the specified IF. These numbers are multiplied by the raw correlaton co-efficients to produce the numbers in the correlation data area.
return the IF polarisation. Normally at the VLA IF's A & B measure right-hand-circular polarisation, and IF's C & D measure left-hand-circular polarisation. But in special circumstances this can be swapped. This function returns Stokes::RCircular or Stokes::LCircular.
Function which checks the internal data of this class for consistant values. Returns True if everything is fine otherwise returns False.