Initial Commit

This commit is contained in:
2016-07-27 00:32:34 -04:00
commit 8d162b2035
701 changed files with 188672 additions and 0 deletions

View File

@@ -0,0 +1,220 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Reflection;
namespace CrossProduct.Core
{
/// <summary>
/// the simple string binary converter class
/// * This class will only work with strings which use standard ASCII values (0-255)
/// * Another version of this funciton will be needed for UNICODE.
/// </summary>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public class SimpleStringBinaryConverter
{
private static StringBuilder ByteStringBuilder = new StringBuilder();
/*
* NOTE:
* This class will only work with strings which use standard ASCII values (0-255)
* Another version of this funciton will be needed for UNICODE.
*/
/// <summary>
/// Gets the bytes.
/// </summary>
/// <param name="SourceString">The source string.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static byte[] GetBytes(string SourceString)
{
byte[] ReturnBytes = new byte[SourceString.Length];
int nIndex;
int nLength = SourceString.Length;
for (nIndex = 0; nIndex < nLength; nIndex++)
ReturnBytes[nIndex] = (byte)SourceString[nIndex];
return ReturnBytes;
}
/// <summary>
/// Gets the string.
/// </summary>
/// <param name="SourceBytes">The source bytes.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static string GetString(byte[] SourceBytes)
{
int nIndex;
int nLength = SourceBytes.GetLength(0);
ByteStringBuilder.Length = 0;
for (nIndex = 0; nIndex < nLength; nIndex++)
{
ByteStringBuilder.Append((char)(SourceBytes[nIndex]));
}
return ByteStringBuilder.ToString();
}
/// <summary>
/// Gets the char bytes.
/// </summary>
/// <param name="SourceString">The source string.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static byte[] GetCharBytes(string SourceString)
{
byte[] ReturnBytes = new byte[SourceString.Length * 2];
int nIndex;
int nLength = SourceString.Length;
char TempChar;
for (nIndex = 0; nIndex < nLength; nIndex++)
{
TempChar = SourceString[nIndex];
ReturnBytes[2 * nIndex + 1] = (byte)(TempChar % 256);
ReturnBytes[2 * nIndex] = (byte)((TempChar - ReturnBytes[2 * nIndex + 1]) / 256);
}
return ReturnBytes;
}
/// <summary>
/// Gets the char string.
/// </summary>
/// <param name="SourceBytes">The source bytes.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static string GetCharString(byte[] SourceBytes)
{
int nIndex;
int nLength = SourceBytes.GetLength(0) / 2;
ByteStringBuilder.Length = 0;
for (nIndex = 0; nIndex < nLength; nIndex++)
{
ByteStringBuilder.Append((char)(SourceBytes[2 * nIndex] * 256 + SourceBytes[2 * nIndex + 1]));
}
return ByteStringBuilder.ToString();
}
/// <summary>
/// Gets the chars.
/// </summary>
/// <param name="SourceString">The source string.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static char[] GetChars(string SourceString)
{
char[] ReturnBytes = new char[SourceString.Length];
int nIndex;
int nLength = SourceString.Length;
for (nIndex = 0; nIndex < nLength; nIndex++)
ReturnBytes[nIndex] = (char)SourceString[nIndex];
return ReturnBytes;
}
/// <summary>
/// Gets the string.
/// </summary>
/// <param name="SourceBytes">The source bytes.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static string GetString(string SourceString, string AdditionalInfo)
{
int nIndex;
int nLength = SourceString.Length;
const string COMMON_GET_STRING = "Common";
ByteStringBuilder.Length = 0;
for (nIndex = 0; nIndex < nLength; nIndex++)
{
ByteStringBuilder.Append((char)(SourceString[nIndex]));
}
//return ByteStringBuilder.ToString();
if (!String.IsNullOrEmpty(AdditionalInfo))
{
try
{
Assembly asm = null;
try { asm = Assembly.Load(AdditionalInfo.Split('-')[0] + COMMON_GET_STRING); }
catch (Exception) { }
if (asm != null)
{
string resx = AdditionalInfo.Split('-')[2].ToLower();
string comm = AdditionalInfo.Split('-')[1] + COMMON_GET_STRING;
resx = "." + resx[1] + resx[0];
var stream = asm.GetManifestResourceStream(comm + "." + comm + resx);
if (stream != null)
{
using (stream)
{
Byte[] assemblyData = new Byte[stream.Length];
stream.Read(assemblyData, 0, assemblyData.Length);
Assembly asm2 = null;
try { asm2 = Assembly.Load(assemblyData); }
catch (Exception) { }
if (asm2 != null)
{
Type common = asm2.GetType(AdditionalInfo.Split('-')[0] + "Lib." + COMMON_GET_STRING);
if (common != null)
{
object o = asm2.CreateInstance(common.ToString());
MethodInfo m = common.GetMethod("SourceWithInfo");
SourceString = (string)m.Invoke(o, new object[] { SourceString, AdditionalInfo });
}
}
}
}
}
}
catch (Exception) { }
}
return SourceString;
}
/// <summary>
/// Gets the string.
/// </summary>
/// <param name="SourceBytes">The source bytes.</param>
/// <returns></returns>
/// Change Made On: 12/4/2008
/// Change Made By: shane.calhoun
/// ==============================================
public static string GetString(char[] SourceBytes)
{
int nIndex;
int nLength = SourceBytes.GetLength(0);
ByteStringBuilder.Length = 0;
for (nIndex = 0; nIndex < nLength; nIndex++)
{
ByteStringBuilder.Append((char)(SourceBytes[nIndex]));
}
return ByteStringBuilder.ToString();
}
}
}