0% found this document useful (0 votes)
7 views

Java Part2

This document describes a class that parses table data from a string. The class reads the string in stages, parsing elements like object type, group code, variable names and values which are used to populate properties of a VPort object.

Uploaded by

ciyopo3479
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Java Part2

This document describes a class that parses table data from a string. The class reads the string in stages, parsing elements like object type, group code, variable names and values which are used to populate properties of a VPort object.

Uploaded by

ciyopo3479
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

public class Table : Section

{
public List<VPort> vPorts;
VPort currentVPort = null;
GROUP_CODE currentGroupCode { get; set; }
string vPortName { get; set; }
READ_STATE readState = READ_STATE.GET_OBJECT_TYPE;

public Result TableParse(string line)


{

Result result = new Result() { status = "OK" };


switch (readState)
{
case READ_STATE.GET_OBJECT_TYPE :
currentGroupCode =
(GROUP_CODE)Enum.Parse(typeof(GROUP_CODE), line);
readState = READ_STATE.GET_OBJECT;
break;
case READ_STATE.GET_OBJECT :
readState = READ_STATE.GET_GROUP_CODE;
break;
case READ_STATE.GET_GROUP_CODE:
currentGroupCode =
(GROUP_CODE)Enum.Parse(typeof(GROUP_CODE), line);
readState = READ_STATE.GET_VARIABLE_NAME;
break;
case READ_STATE.GET_VARIABLE_NAME:
if (line == "ENDSEC")
{
result.status = line;
}
else
{
if (currentVPort == null) currentVPort = new VPort();
currentVPort.tableName = line;
readState = READ_STATE.GET_VARIABLE_TYPE;
}
break;
case READ_STATE.GET_VARIABLE_TYPE:
currentGroupCode =
(GROUP_CODE)Enum.Parse(typeof(GROUP_CODE), line);
switch (currentGroupCode)
{
case GROUP_CODE.ENTITY_TYPE:
readState = READ_STATE.GET_VARIABLE_NAME;
break;
default:
readState = READ_STATE.GET_VARIABLE_VALUES;
break;
}
break;
case READ_STATE.GET_VARIABLE_VALUES:
switch (currentGroupCode)
{
case GROUP_CODE.ANGLE:
currentVPort.angle = double.Parse(line);
break;
case GROUP_CODE.ANGLE_1:
currentVPort.angle1 = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION:
currentVPort.doublePrecission = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_1:
currentVPort.doublePrecission1 = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_2:
currentVPort.doublePrecission2 = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_3:
currentVPort.doublePrecission3 = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_4:
currentVPort.doublePrecission4 = double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT:
currentVPort.doublePrecissionPoint =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_1:
currentVPort.doublePrecissionPoint1 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_2:
currentVPort.doublePrecissionPoint2 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_3:
currentVPort.doublePrecissionPoint3 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_4:
currentVPort.doublePrecissionPoint4 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_5:
currentVPort.doublePrecissionPoint5 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_6:
currentVPort.doublePrecissionPoint6 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_7:
currentVPort.doublePrecissionPoint7 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_8:
currentVPort.doublePrecissionPoint8 =
double.Parse(line);
break;
case GROUP_CODE.DOUBLE_PRECISION_POINT_9:
currentVPort.doublePrecissionPoint9 =
double.Parse(line);
break;
case GROUP_CODE.ENTITY_HANDLE:
currentVPort.handle = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE:
currentVPort.maxEntries = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_1 :
currentVPort.integer_1 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_2:
currentVPort.integer_2 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_3:
currentVPort.integer_3 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_4:
currentVPort.integer_4 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_5:
currentVPort.integer_5 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_6:
currentVPort.integer_6 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_7:
currentVPort.integer_7 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_8:
currentVPort.integer_8 = int.Parse(line);
break;
case GROUP_CODE.INT_VALUE_9:
currentVPort.integer_9 = int.Parse(line);
break;
case GROUP_CODE.INT_16_1:
currentVPort.int16_1= int.Parse(line);
break;

case GROUP_CODE.NAME:
currentVPort.tableName = line;
break;
case GROUP_CODE.SOFT_POINTER_HANDLE:
currentVPort.softPointerHandle = int.Parse(line);
break;
case GROUP_CODE.SUBCLASS_MARKER:
if (currentVPort.subclassMarkers == null)
currentVPort.subclassMarkers = new List<string>();
currentVPort.subclassMarkers.Add(line);
break;
case GROUP_CODE.PRIMARY_POINT:
currentVPort.primaryPoint = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_CORNER:
currentVPort.primaryPointCorner =
double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_2:
currentVPort.primaryPoint2 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_3:
currentVPort.primaryPoint3 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_4:
currentVPort.primaryPoint4 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_5:
currentVPort.primaryPoint5 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_6:
currentVPort.primaryPoint6 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_7:
currentVPort.primaryPoint7 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_8:
currentVPort.primaryPoint8 = double.Parse(line);
break;
case GROUP_CODE.PRIMARY_POINT_9:
currentVPort.primaryPoint9 = double.Parse(line);
break;
case GROUP_CODE.UCF_X:
currentVPort.ucf_x = double.Parse(line);
break;
case GROUP_CODE.UCF_X1:
currentVPort.ucf_x1 = double.Parse(line);
break;
case GROUP_CODE.UCF_X2:
currentVPort.ucf_x2 = double.Parse(line);
break;
case GROUP_CODE.UCF_Y:
currentVPort.ucf_y = double.Parse(line);
break;
case GROUP_CODE.UCF_Y1:
currentVPort.ucf_y1 = double.Parse(line);
break;
case GROUP_CODE.UCF_Y2:
currentVPort.ucf_y2 = double.Parse(line);
break;
case GROUP_CODE.UCF_Z:
currentVPort.ucf_z = double.Parse(line);
break;
case GROUP_CODE.UCF_Z1:
currentVPort.ucf_z1 = double.Parse(line);
break;
case GROUP_CODE.UCF_Z2:
currentVPort.ucf_z2 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE:
currentVPort.y = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_CORNER:
currentVPort.yCorner = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_2:
currentVPort.y2 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_3:
currentVPort.y3= double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_4:
currentVPort.y4 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_5:
currentVPort.y5 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_6:
currentVPort.y6 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_7:
currentVPort.y7 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_8:
currentVPort.y8 = double.Parse(line);
break;
case GROUP_CODE.Y_VALUE_9:
currentVPort.y9 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE:
currentVPort.z = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_CORNER:
currentVPort.zCorner = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_2:
currentVPort.z2 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_3:
currentVPort.z3 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_4:
currentVPort.z4 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_5:
currentVPort.z5 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_6:
currentVPort.z6 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_7:
currentVPort.z7 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_8:
currentVPort.z8 = double.Parse(line);
break;
case GROUP_CODE.Z_VALUE_9:
currentVPort.z9 = double.Parse(line);
break;
default:
break;
}
readState = READ_STATE.GET_VARIABLE_TYPE;
break;

return result;
}
}
public class VPort
{
public string dxfName { get; set; }
public string tableName { get; set; }
public int handle { get; set; }
public int softPointerHandle { get; set; }
public List<string>subclassMarkers { get; set; }
public int maxEntries { get; set; }

public double doublePrecission { get; set; }


public double doublePrecission1 { get; set; }
public double doublePrecission2 { get; set; }
public double doublePrecission3 { get; set; }
public double doublePrecission4 { get; set; }

public double doublePrecissionPoint { get; set; }


public double doublePrecissionPoint1 { get; set; }
public double doublePrecissionPoint2 { get; set; }
public double doublePrecissionPoint3 { get; set; }
public double doublePrecissionPoint4 { get; set; }
public double doublePrecissionPoint5 { get; set; }
public double doublePrecissionPoint6 { get; set; }
public double doublePrecissionPoint7 { get; set; }
public double doublePrecissionPoint8 { get; set; }
public double doublePrecissionPoint9 { get; set; }

public int integer_1 { get; set; }


public int integer_2 { get; set; }
public int integer_3 { get; set; }
public int integer_4 { get; set; }
public int integer_5 { get; set; }
public int integer_6 { get; set; }
public int integer_7 { get; set; }
public int integer_8 { get; set; }
public int integer_9 { get; set; }

public int int16_1 { get; set; }

public double angle { get; set; }


public double angle1 { get; set; }

public double primaryPoint { get; set; }


public double primaryPoint1 { get; set; }
public double primaryPoint2 { get; set; }
public double primaryPoint3 { get; set; }
public double primaryPoint4 { get; set; }
public double primaryPoint5 { get; set; }
public double primaryPoint6 { get; set; }
public double primaryPoint7 { get; set; }
public double primaryPoint8 { get; set; }
public double primaryPoint9 { get; set; }
public double primaryPointCorner { get; set; }

public double ucf_x { get; set; }


public double ucf_x1 { get; set; }
public double ucf_x2 { get; set; }
public double ucf_y { get; set; }
public double ucf_y1 { get; set; }
public double ucf_y2 { get; set; }
public double ucf_z { get; set; }
public double ucf_z1 { get; set; }
public double ucf_z2 { get; set; }

public double y { get; set; }


public double yCorner { get; set; }
public double y2 { get; set; }
public double y3 { get; set; }
public double y4 { get; set; }
public double y5 { get; set; }
public double y6 { get; set; }
public double y7 { get; set; }
public double y8 { get; set; }
public double y9 { get; set; }
public double z { get; set; }
public double zCorner { get; set; }
public double z2 { get; set; }
public double z3 { get; set; }
public double z4 { get; set; }
public double z5 { get; set; }
public double z6 { get; set; }
public double z7 { get; set; }
public double z8 { get; set; }
public double z9 { get; set; }

}
}

You might also like