Descriptor for a constant value
Inheritance: Constant
		internal void AddData(DataConstant cVal) 
		{
			file.AddInitData(cVal);
		}
		internal FieldRVA(Field field, DataConstant data)   
		{
			this.field = field;
			this.data = data;
			tabIx = MDTable.FieldRVA;
		}
		/// <summary>
		/// Add an initial value for this field (at dataLabel) (.data)
		/// </summary>
		/// <param name="val">the value for the field</param>
		/// <param name="repeatVal">the number of repetitions of this value</param>
		public void AddDataValue(DataConstant val) 
		{
			flags |= HasFieldRVA;
			rva = new FieldRVA(this,val);
		}
		public ArrayConstant(DataConstant[] dVals) 
		{
			dataVals = dVals;
			for (int i=0; i < dataVals.Length; i++) {
				size += dataVals[i].GetSize();
			}
		}
		public RepeatedConstant(DataConstant dConst, int repeatCount) 
		{
			data = dConst;
			repCount = (uint)repeatCount;
			int[] sizes = new int[1];
			sizes[0] = repeatCount;
			type = new BoundArray(type,1,sizes);
			size = data.GetSize() * repCount;
		}
		public AddressConstant(DataConstant dConst) 
		{
			data = dConst;
			size = 4;
			type = PrimitiveType.TypedRef;
		}
 internal void AddInitData(DataConstant cVal) {
                     if (sdata == null) {                    
                             sdata = new Section(sdataName,0xC0000040);   // IMAGE_SCN_CNT  INITIALIZED_DATA, READ, WRITE
                             data = new ArrayList(); 
                     }
   data.Add(cVal);
   cVal.DataOffset = sdata.Tide();
   sdata.IncTide(cVal.GetSize());
 }