First update.
This commit is contained in:
@@ -17,8 +17,8 @@ namespace Recon
|
||||
{
|
||||
if(aJsonObj.is_array())
|
||||
{
|
||||
std::vector<double> vec = aJsonObj.get<std::vector<double>>();
|
||||
double* data = vec.data();
|
||||
std::vector<float> vec = aJsonObj.get<std::vector<float>>();
|
||||
float* data = vec.data();
|
||||
int size = vec.size();
|
||||
if(aIsHorizontal)
|
||||
{
|
||||
@@ -29,8 +29,8 @@ namespace Recon
|
||||
|
||||
if(aJsonObj.is_number())
|
||||
{
|
||||
double value = aJsonObj.get<double>();
|
||||
return Aurora::Matrix::fromRawData(new double[1]{value}, 1);
|
||||
float value = aJsonObj.get<float>();
|
||||
return Aurora::Matrix::fromRawData(new float[1]{value}, 1);
|
||||
}
|
||||
|
||||
return Aurora::Matrix();
|
||||
@@ -66,11 +66,11 @@ namespace Recon
|
||||
}
|
||||
if(ce.contains("offsetFilterEnabled"))
|
||||
{
|
||||
reconParams::offsetFilterEnabled = ce.at("offsetFilterEnabled").get<double>();
|
||||
reconParams::offsetFilterEnabled = ce.at("offsetFilterEnabled").get<float>();
|
||||
}
|
||||
if(ce.contains("offsetFilterDisabled"))
|
||||
{
|
||||
reconParams::offsetFilterDisabled = ce.at("offsetFilterDisabled").get<double>();
|
||||
reconParams::offsetFilterDisabled = ce.at("offsetFilterDisabled").get<float>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -195,11 +195,11 @@ namespace Recon
|
||||
}
|
||||
if(qualityCheck.contains("warningThreshold"))
|
||||
{
|
||||
reflectParams::warningThreshold = qualityCheck.at("warningThreshold").get<double>();
|
||||
reflectParams::warningThreshold = qualityCheck.at("warningThreshold").get<float>();
|
||||
}
|
||||
if(qualityCheck.contains("errorThreshold"))
|
||||
{
|
||||
reflectParams::errorThreshold = qualityCheck.at("errorThreshold").get<double>();
|
||||
reflectParams::errorThreshold = qualityCheck.at("errorThreshold").get<float>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,7 +216,7 @@ namespace Recon
|
||||
}
|
||||
if(dataPreparation.contains("offsetElectronic"))
|
||||
{
|
||||
reflectParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<double>();
|
||||
reflectParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<float>();
|
||||
}
|
||||
if(dataPreparation.contains("removeDCOffset"))
|
||||
{
|
||||
@@ -229,11 +229,11 @@ namespace Recon
|
||||
nlohmann::json imageInfos = params.at("imageInfos");
|
||||
if(imageInfos.contains("pixelResolutionX"))
|
||||
{
|
||||
reflectParams::pixelResolutionX = imageInfos.at("pixelResolutionX").get<double>();
|
||||
reflectParams::pixelResolutionX = imageInfos.at("pixelResolutionX").get<float>();
|
||||
}
|
||||
if(imageInfos.contains("pixelResolutionY"))
|
||||
{
|
||||
reflectParams::pixelResolutionY = imageInfos.at("pixelResolutionY").get<double>();
|
||||
reflectParams::pixelResolutionY = imageInfos.at("pixelResolutionY").get<float>();
|
||||
}
|
||||
if(imageInfos.contains("imageStartpoint"))
|
||||
{
|
||||
@@ -319,7 +319,7 @@ namespace Recon
|
||||
}
|
||||
if(transmissionCorrection.contains("resolutionTransmMap"))
|
||||
{
|
||||
reflectParams::resolutionTransmMap = transmissionCorrection.at("resolutionTransmMap").get<double>();
|
||||
reflectParams::resolutionTransmMap = transmissionCorrection.at("resolutionTransmMap").get<float>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -417,7 +417,7 @@ namespace Recon
|
||||
}
|
||||
if(dataSelection.contains("sensFilter"))
|
||||
{
|
||||
transParams::sensFilter = dataSelection.at("sensFilter").get<double>();
|
||||
transParams::sensFilter = dataSelection.at("sensFilter").get<float>();
|
||||
}
|
||||
if(dataSelection.contains("angleLowerLimit"))
|
||||
{
|
||||
@@ -456,11 +456,11 @@ namespace Recon
|
||||
}
|
||||
if(qualityCheck.contains("warningThreshold"))
|
||||
{
|
||||
transParams::warningThreshold = qualityCheck.at("warningThreshold").get<double>();
|
||||
transParams::warningThreshold = qualityCheck.at("warningThreshold").get<float>();
|
||||
}
|
||||
if(qualityCheck.contains("errorThreshold"))
|
||||
{
|
||||
transParams::errorThreshold = qualityCheck.at("errorThreshold").get<double>();
|
||||
transParams::errorThreshold = qualityCheck.at("errorThreshold").get<float>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -490,7 +490,7 @@ namespace Recon
|
||||
}
|
||||
if(dataPreparation.contains("offsetElectronic"))
|
||||
{
|
||||
transParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<double>();
|
||||
transParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<float>();
|
||||
}
|
||||
if(dataPreparation.contains("aScanReconstructionFrequency"))
|
||||
{
|
||||
@@ -498,11 +498,11 @@ namespace Recon
|
||||
}
|
||||
if(dataPreparation.contains("minTemperature"))
|
||||
{
|
||||
transParams::minTemperature = dataPreparation.at("minTemperature").get<double>();
|
||||
transParams::minTemperature = dataPreparation.at("minTemperature").get<float>();
|
||||
}
|
||||
if(dataPreparation.contains("maxTemperature"))
|
||||
{
|
||||
transParams::maxTemperature = dataPreparation.at("maxTemperature").get<double>();
|
||||
transParams::maxTemperature = dataPreparation.at("maxTemperature").get<float>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -628,16 +628,16 @@ namespace Recon
|
||||
reconParams::useTASTempComp = true;
|
||||
reconParams::correctTASTemp = 1;
|
||||
//reconParams.hardwareSelection
|
||||
reconParams::gpuSelectionList = Aurora::Matrix::fromRawData(new double[8] {0,1,2,3,4,5,6,7},8);
|
||||
reconParams::gpuSelectionList = Aurora::Matrix::fromRawData(new float[8] {0,1,2,3,4,5,6,7},8);
|
||||
//reconParams.dataInfo
|
||||
reconParams::expectedAScanDataLength = 4000;
|
||||
|
||||
//reflectParams.dataSelection
|
||||
reflectParams::senderTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
reflectParams::senderElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
reflectParams::receiverTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
reflectParams::receiverElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
reflectParams::motorPos = Aurora::Matrix::fromRawData(new double[2] {1,2}, 2);
|
||||
reflectParams::senderTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
reflectParams::senderElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
reflectParams::receiverTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
reflectParams::receiverElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
reflectParams::motorPos = Aurora::Matrix::fromRawData(new float[2] {1,2}, 2);
|
||||
reflectParams::constrictReflectionAngles = 1;
|
||||
reflectParams::angleLowerLimit = 45;
|
||||
reflectParams::angleUpperLimit = 360;
|
||||
@@ -661,8 +661,8 @@ namespace Recon
|
||||
reflectParams::pixelResolutionX = 400;
|
||||
reflectParams::pixelResolutionY = 400;
|
||||
reflectParams::pixelResolutionZ = NAN;
|
||||
reflectParams::imageStartpoint = Aurora::Matrix::fromRawData(new double[3] {-0.18,-0.18,-0.22}, 1, 3);
|
||||
reflectParams::imageEndpoint = Aurora::Matrix::fromRawData(new double[3] {0.18,0.18,0.02}, 1, 3);
|
||||
reflectParams::imageStartpoint = Aurora::Matrix::fromRawData(new float[3] {-0.18,-0.18,-0.22}, 1, 3);
|
||||
reflectParams::imageEndpoint = Aurora::Matrix::fromRawData(new float[3] {0.18,0.18,0.02}, 1, 3);
|
||||
reflectParams::imageResolution = NAN;
|
||||
reflectParams::imageXYZ = Aurora::Matrix();
|
||||
//reflectParams.signalProcessing
|
||||
@@ -678,7 +678,7 @@ namespace Recon
|
||||
reflectParams::matchedFilterCeAScan = true;
|
||||
reflectParams::windowLength = 10;
|
||||
reflectParams::numThreads = 30;
|
||||
reflectParams::expectedUSSpeedRange = Aurora::Matrix::fromRawData(new double[2] {1420,1600}, 1, 2);
|
||||
reflectParams::expectedUSSpeedRange = Aurora::Matrix::fromRawData(new float[2] {1420,1600}, 1, 2);
|
||||
//reflectParams.transmissionCorrection
|
||||
reflectParams::soundSpeedCorrection = 0;
|
||||
reflectParams::attenuationCorrection = 0;
|
||||
@@ -688,10 +688,10 @@ namespace Recon
|
||||
reflectParams::debugMode = 0;
|
||||
reflectParams::blockSizeReco = 60000;
|
||||
reflectParams::medianWindowSize = 1;
|
||||
reflectParams::saftVariant = Aurora::Matrix::fromRawData(new double[6]{1,1,1,1,0,0} , 1, 6);
|
||||
reflectParams::saftVariant = Aurora::Matrix::fromRawData(new float[6]{1,1,1,1,0,0} , 1, 6);
|
||||
reflectParams::useAscanIndex = 1;
|
||||
reflectParams::attenuationCorrectionLimit = 20;
|
||||
reflectParams::blockDimXYZ = Aurora::Matrix::fromRawData(new double[3]{16,16,1} , 1, 3);
|
||||
reflectParams::blockDimXYZ = Aurora::Matrix::fromRawData(new float[3]{16,16,1} , 1, 3);
|
||||
reflectParams::gpuSelectionList = reconParams::gpuSelectionList;;
|
||||
//reflectParams
|
||||
reflectParams::VERSION_MATLAB_MAJOR = 9;
|
||||
@@ -704,19 +704,19 @@ namespace Recon
|
||||
transParams::saveRecon = 1;
|
||||
transParams::saveDebugInfomation = 1;
|
||||
//transParams.dataSelection
|
||||
transParams::senderTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
transParams::senderElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
transParams::receiverTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
transParams::receiverElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
transParams::motorPos = Aurora::Matrix::fromRawData(new double[2] {1,2}, 2);
|
||||
transParams::senderTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
transParams::senderElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
transParams::receiverTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
|
||||
transParams::receiverElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
|
||||
transParams::motorPos = Aurora::Matrix::fromRawData(new float[2] {1,2}, 2);
|
||||
transParams::filterSensitivity = 1;
|
||||
transParams::sensFilter = 0.3;
|
||||
transParams::angleLowerLimit = 120;
|
||||
transParams::angleUpperLimit = 180;
|
||||
transParams::applyCalib = true;
|
||||
transParams::snrThreshold = 10;
|
||||
transParams::calibReferenceTas = Aurora::Matrix::fromRawData(new double[1] {1},1);
|
||||
transParams::calibReferenceMotorPosition = Aurora::Matrix::fromRawData(new double[1] {1},1);
|
||||
transParams::calibReferenceTas = Aurora::Matrix::fromRawData(new float[1] {1},1);
|
||||
transParams::calibReferenceMotorPosition = Aurora::Matrix::fromRawData(new float[1] {1},1);
|
||||
//transParams.qualityCheck
|
||||
transParams::qualityCheck = 1;
|
||||
transParams::warningThreshold = 0.5;
|
||||
@@ -755,8 +755,8 @@ namespace Recon
|
||||
//transParams.solver
|
||||
transParams::name = "TVAL3";
|
||||
transParams::maxIter = 50;
|
||||
transParams::muValues = Aurora::Matrix::fromRawData(new double[1] {100}, 1);
|
||||
transParams::betaValues = Aurora::Matrix::fromRawData(new double[1] {1}, 1);
|
||||
transParams::muValues = Aurora::Matrix::fromRawData(new float[1] {100}, 1);
|
||||
transParams::betaValues = Aurora::Matrix::fromRawData(new float[1] {1}, 1);
|
||||
transParams::runTransmissionReco = true;
|
||||
transParams::nonNeg = false;
|
||||
|
||||
|
||||
@@ -16,8 +16,8 @@ namespace Recon
|
||||
//reconParams.measurementInfo.ce
|
||||
EXTERN_C bool useCEMeasured;
|
||||
EXTERN_C bool removeOutliersFromCEMeasured;
|
||||
EXTERN_C double offsetFilterEnabled;
|
||||
EXTERN_C double offsetFilterDisabled;
|
||||
EXTERN_C float offsetFilterEnabled;
|
||||
EXTERN_C float offsetFilterDisabled;
|
||||
//reconParams.measurementInfo.temp
|
||||
EXTERN_C bool useTASTempComp;
|
||||
EXTERN_C bool correctTASTemp;
|
||||
@@ -46,21 +46,21 @@ namespace Recon
|
||||
EXTERN_C int senderElementSize;
|
||||
//reflectParams.qualityCheck
|
||||
EXTERN_C bool qualityCheck;
|
||||
EXTERN_C double warningThreshold;
|
||||
EXTERN_C double errorThreshold;
|
||||
EXTERN_C float warningThreshold;
|
||||
EXTERN_C float errorThreshold;
|
||||
//reflectParams.dataPreparation
|
||||
EXTERN_C int version;
|
||||
EXTERN_C int aScanReconstructionFrequency;
|
||||
EXTERN_C double offsetElectronic;
|
||||
EXTERN_C float offsetElectronic;
|
||||
EXTERN_C bool removeDCOffset;
|
||||
EXTERN_C int expectedAScanDataLength;
|
||||
//reflectParams.imageInfos
|
||||
EXTERN_C double pixelResolutionX;
|
||||
EXTERN_C double pixelResolutionY;
|
||||
EXTERN_C double pixelResolutionZ;
|
||||
EXTERN_C float pixelResolutionX;
|
||||
EXTERN_C float pixelResolutionY;
|
||||
EXTERN_C float pixelResolutionZ;
|
||||
EXTERN_C Aurora::Matrix imageStartpoint;
|
||||
EXTERN_C Aurora::Matrix imageEndpoint;
|
||||
EXTERN_C double imageResolution;
|
||||
EXTERN_C float imageResolution;
|
||||
EXTERN_C Aurora::Matrix imageXYZ;
|
||||
//reflectParams.signalProcessing
|
||||
EXTERN_C int useOptPulse;
|
||||
@@ -80,7 +80,7 @@ namespace Recon
|
||||
EXTERN_C int soundSpeedCorrection;
|
||||
EXTERN_C int attenuationCorrection;
|
||||
EXTERN_C int saveTransmInReflCoords;
|
||||
EXTERN_C double resolutionTransmMap;
|
||||
EXTERN_C float resolutionTransmMap;
|
||||
//reflectParams.saft
|
||||
EXTERN_C int debugMode;
|
||||
EXTERN_C int blockSizeReco;
|
||||
@@ -110,7 +110,7 @@ namespace Recon
|
||||
EXTERN_C Aurora::Matrix receiverElementList;
|
||||
EXTERN_C Aurora::Matrix motorPos;
|
||||
EXTERN_C int filterSensitivity;
|
||||
EXTERN_C double sensFilter;
|
||||
EXTERN_C float sensFilter;
|
||||
EXTERN_C int angleLowerLimit;
|
||||
EXTERN_C int angleUpperLimit;
|
||||
EXTERN_C bool applyCalib;
|
||||
@@ -119,18 +119,18 @@ namespace Recon
|
||||
EXTERN_C Aurora::Matrix calibReferenceMotorPosition;
|
||||
//transParams.qualityCheck
|
||||
EXTERN_C int qualityCheck;
|
||||
EXTERN_C double warningThreshold;
|
||||
EXTERN_C double errorThreshold;
|
||||
EXTERN_C float warningThreshold;
|
||||
EXTERN_C float errorThreshold;
|
||||
//transParams.dataBlocking
|
||||
EXTERN_C int mpSize;
|
||||
EXTERN_C int senderTASSize;
|
||||
EXTERN_C int senderElementSize;
|
||||
//transParams.dataPreparation
|
||||
EXTERN_C int numPixelXY;
|
||||
EXTERN_C double offsetElectronic;
|
||||
EXTERN_C float offsetElectronic;
|
||||
EXTERN_C int aScanReconstructionFrequency;
|
||||
EXTERN_C double minTemperature;
|
||||
EXTERN_C double maxTemperature;
|
||||
EXTERN_C float minTemperature;
|
||||
EXTERN_C float maxTemperature;
|
||||
//transParams.detection
|
||||
EXTERN_C int forceRedetect;
|
||||
EXTERN_C int saveDetection;
|
||||
@@ -144,8 +144,8 @@ namespace Recon
|
||||
EXTERN_C int maxSpeedOfSound;
|
||||
EXTERN_C int detectionWindowSOS;
|
||||
EXTERN_C int detectionWindowATT;
|
||||
EXTERN_C double pulseLengthSamples;
|
||||
EXTERN_C double pulseLengthRefSamples;
|
||||
EXTERN_C float pulseLengthSamples;
|
||||
EXTERN_C float pulseLengthRefSamples;
|
||||
//transParams.rayTracing
|
||||
EXTERN_C bool bentReconstruction;
|
||||
EXTERN_C int bresenham;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user