Esempio n. 1
0
        /// <summary>
        /// Function to lookup Grid data - used for grid utility functions only
        /// </summary>
        public long AFDData(string dataName, long operation, ref afdGridData details)
        {
            StringBuilder passDetails = new StringBuilder();
            long          retVal;

            // Compose the DLL string from the supplied structure
            passDetails.Append(details.Lookup.PadRight(255, ' '));
            passDetails.Append(details.GBGridE.PadRight(10, ' '));
            passDetails.Append(details.GBGridN.PadRight(10, ' '));
            passDetails.Append(details.NIGridE.PadRight(10, ' '));
            passDetails.Append(details.NIGridN.PadRight(10, ' '));
            passDetails.Append(details.Latitude.PadRight(10, ' '));
            passDetails.Append(details.Longitude.PadRight(10, ' '));
            passDetails.Append(details.TextualLatitude.PadRight(15, ' '));
            passDetails.Append(details.TextualLongitude.PadRight(15, ' '));
            passDetails.Append(details.Km.PadRight(6, ' '));
            passDetails.Append(details.Miles.PadRight(6, ' '));
            passDetails.Append(details.GBGridEFrom.PadRight(10, ' '));
            passDetails.Append(details.GBGridNFrom.PadRight(10, ' '));
            passDetails.Append(details.NIGridEFrom.PadRight(10, ' '));
            passDetails.Append(details.NIGridNFrom.PadRight(10, ' '));
            passDetails.Append(details.LatitudeFrom.PadRight(10, ' '));
            passDetails.Append(details.LongitudeFrom.PadRight(10, ' '));
            passDetails.Append(details.TextualLatitudeFrom.PadRight(15, ' '));
            passDetails.Append(details.TextualLongitudeFrom.PadRight(15, ' '));

            // Call the DLL function
            string returnDetails = CallDllFunction(dataName, operation, passDetails, out retVal);

            // Retrieve the data structure from the string returned by the DLL

            details.Lookup           = returnDetails.Substring(0, 255).Trim();
            details.GBGridE          = returnDetails.Substring(255, 10).Trim();
            details.GBGridN          = returnDetails.Substring(265, 10).Trim();
            details.NIGridE          = returnDetails.Substring(275, 10).Trim();
            details.NIGridN          = returnDetails.Substring(285, 10).Trim();
            details.Latitude         = returnDetails.Substring(295, 10).Trim();
            details.Longitude        = returnDetails.Substring(305, 10).Trim();
            details.TextualLatitude  = returnDetails.Substring(315, 15).Trim();
            details.TextualLongitude = returnDetails.Substring(330, 15).Trim();
            details.Km                   = returnDetails.Substring(345, 6).Trim();
            details.Miles                = returnDetails.Substring(351, 6).Trim();
            details.GBGridEFrom          = returnDetails.Substring(357, 10).Trim();
            details.GBGridNFrom          = returnDetails.Substring(367, 10).Trim();
            details.NIGridEFrom          = returnDetails.Substring(377, 10).Trim();
            details.NIGridNFrom          = returnDetails.Substring(387, 10).Trim();
            details.LatitudeFrom         = returnDetails.Substring(397, 10).Trim();
            details.LongitudeFrom        = returnDetails.Substring(407, 10).Trim();
            details.TextualLatitudeFrom  = returnDetails.Substring(417, 15).Trim();
            details.TextualLongitudeFrom = returnDetails.Substring(432, 15).Trim();

            // Return with the function return value
            return(retVal);
        }
Esempio n. 2
0
 /// Procedure to clear AFDGridData Structure
 /// </summary>
 /// <param name="details">AFDData to be cleared</param>
 public void ClearAFDGridData(ref afdGridData details)
 {
     details.Lookup           = string.Empty;
     details.GBGridE          = string.Empty;
     details.GBGridN          = string.Empty;
     details.NIGridE          = string.Empty;
     details.NIGridN          = string.Empty;
     details.Latitude         = string.Empty;
     details.Longitude        = string.Empty;
     details.TextualLatitude  = string.Empty;
     details.TextualLongitude = string.Empty;
     details.Km                   = string.Empty;
     details.Miles                = string.Empty;
     details.GBGridEFrom          = string.Empty;
     details.GBGridNFrom          = string.Empty;
     details.NIGridEFrom          = string.Empty;
     details.NIGridNFrom          = string.Empty;
     details.LatitudeFrom         = string.Empty;
     details.LongitudeFrom        = string.Empty;
     details.TextualLatitudeFrom  = string.Empty;
     details.TextualLongitudeFrom = string.Empty;
 }