Esempio n. 1
0
void ModelBaker::exportScene() {
    auto fbxData = FBXWriter::encodeFBX(_rootNode);

    QString bakedModelURL = _bakedModelURL.toString();
    QFile bakedFile(bakedModelURL);

    if (!bakedFile.open(QIODevice::WriteOnly)) {
        handleError("Error opening " + bakedModelURL + " for writing");
        return;
    }

    bakedFile.write(fbxData);

    _outputFiles.push_back(bakedModelURL);

#ifdef HIFI_DUMP_FBX
    {
        FBXToJSON fbxToJSON;
        fbxToJSON << _rootNode;
        QFileInfo modelFile(_bakedModelURL.toString());
        QString outFilename(modelFile.dir().absolutePath() + "/" + modelFile.completeBaseName() + "_FBX.json");
        QFile jsonFile(outFilename);
        if (jsonFile.open(QIODevice::WriteOnly)) {
            jsonFile.write(fbxToJSON.str().c_str(), fbxToJSON.str().length());
            jsonFile.close();
        }
    }
#endif

    qCDebug(model_baking) << "Exported" << _modelURL << "with re-written paths to" << bakedModelURL;
}
Esempio n. 2
0
void HHRImpl::write2Json() {

	string outFilename(outputFileLocation);
	outFilename += rootName;
	outFilename += "/HHR/";
	outFilename += "hhr.json";
	//cout << outFilename << endl;
	ofstream outputFile(outFilename.c_str());

	outputFile << "{" << "\n";
	for (int i = 0; i < hhrResultVector.size(); i++) {
		outputFile << "\"protein" << i << "\":{\n";
		outputFile << "\t\"proteinName\":\""
				<< hhrResultVector[i].getProteinName() << "\",\n";
		outputFile << "\t\"probab\":\"" << hhrResultVector[i].getProbab()
				<< "\",\n";
		outputFile << "\t\"OriginalSequenceLength\":\"" << proteinSeqLength
				<< "\",\n";

		outputFile << "\t\"eValue\":\"" << hhrResultVector[i].getExpect()
				<< "\",\n";
		outputFile << "\t\"score\":\"" << hhrResultVector[i].getScore()
				<< "\",\n";
		outputFile << "\t\"alignedCols\":\""
				<< hhrResultVector[i].getAlignedCols() << "\",\n";
		outputFile << "\t\"identities\":\""
				<< hhrResultVector[i].getIdentities() << "\",\n";

		outputFile << "\t\"QueryStart\":\""
				<< hhrResultVector[i].getQueryStart() << "\",\n";
		outputFile << "\t\"Query\":\"" << hhrResultVector[i].getQuery()
				<< "\",\n";
		outputFile << "\t\"QueryEnd\":\"" << hhrResultVector[i].getQueryEnd()
				<< "\",\n";
		outputFile << "\t\"QueryConsensus\":\""
				<< hhrResultVector[i].getQueryConsensus() << "\",\n";
		outputFile << "\t\"alignment\":\"" << hhrResultVector[i].getAlignment()
				<< "\",\n";
		outputFile << "\t\"TargetStart\":\""
				<< hhrResultVector[i].getTargetStart() << "\",\n";
		outputFile << "\t\"TargetConsensus\":\""
				<< hhrResultVector[i].getTargetConsensus() << "\",\n";
		outputFile << "\t\"TargetEnd\":\"" << hhrResultVector[i].getTargetEnd()
				<< "\",\n";
		outputFile << "\t\"target\":\"" << hhrResultVector[i].getTarget()
				<< "\",\n";
		outputFile << "\t\"targetConf\":\""
				<< hhrResultVector[i].getConfidence() << "\",\n";
		outputFile << "\t\"tPred\":\"" << hhrResultVector[i].getTargetSsPred()
				<< "\"\n";
		outputFile << "},\n";
	}
	outputFile << "\"finish\":\"end\"" << "\n";
	outputFile << "}" << "\n";

	outputFile.close();

}
Esempio n. 3
0
void BLAPDBImpl::write2Json() {

	string outFilename(outputFileLocation);
	outFilename += rootName;
	outFilename += "/BLAPDB/";
	outFilename += "blaPDB.json";
	//cout<<outFilename<<endl;
	ofstream outputFile(outFilename.c_str());

	outputFile << "{" << "\n";

	for (int i = 0; i < blaPDBResultVector.size(); i++) {

		outputFile << "\"protein" << i << "\":{\n";
		outputFile << "\t\"proteinName\":\""
				<< blaPDBResultVector[i].getProteinName() << "\",\n";
		outputFile << "\t\"OriginalSequenceLength\":\"" << proteinSeqLength
				<< "\",\n";
		outputFile << "\t\"Length\":\"" << blaPDBResultVector[i].getLength()
				<< "\",\n";
		outputFile << "\t\"Score\":\"" << blaPDBResultVector[i].getScore()
				<< "\",\n";
		outputFile << "\t\"Expect\":\"" << blaPDBResultVector[i].getExpect()
				<< "\",\n";
		outputFile << "\t\"Identities\":\""
				<< blaPDBResultVector[i].getIdentities() << "%\",\n";
		outputFile << "\t\"Positives\":\""
				<< blaPDBResultVector[i].getPositives() << "%\",\n";
		outputFile << "\t\"Gaps\":\"" << blaPDBResultVector[i].getGaps()
				<< "%\",\n";
		outputFile << "\t\"CoveragePercentage\":\""
				<< double((blaPDBResultVector[i].getSubjectEnd()
						- blaPDBResultVector[i].getSubjectStart() + 1
						- blaPDBResultVector[i].getGapNum()))
						/ (proteinSeqLength) << "%\",\n";
		outputFile << "\t\"QueyStart\":\""
				<< blaPDBResultVector[i].getQueryStart() << "\",\n";
		outputFile << "\t\"Query\":\"" << blaPDBResultVector[i].getQuery()
				<< "\",\n";
		outputFile << "\t\"QueryEnd\":\"" << blaPDBResultVector[i].getQueryEnd()
				<< "\",\n";
		outputFile << "\t\"Alignment\":\""
				<< blaPDBResultVector[i].getAlignment() << "\",\n";
		outputFile << "\t\"SubjectStart\":\""
				<< blaPDBResultVector[i].getSubjectStart() << "\",\n";
		outputFile << "\t\"Subject\":\"" << blaPDBResultVector[i].getSubject()
				<< "\",\n";
		outputFile << "\t\"SubjectEnd\":\""
				<< blaPDBResultVector[i].getSubjectEnd() << "\"\n";
		outputFile << "},\n";
	}
	outputFile << "\"finish\":\"end\"" << "\n";
	outputFile << "}" << "\n";

	outputFile.close();

}
Esempio n. 4
0
// Main function (driver).
int main(int argc, char **argv) {
	if (argc !=3) {
		std::cerr << "# Usage: <execution filename> <input filename> ";
		std::cerr << "<output filename> \n";
		std::cerr << "   Example: $ a.out in.csv out.csv\n";
		std::exit(1);
	};
	// Filenames for input and output csv files. 
	// (input: puzzle, output: solution)
	string inFilename(argv[1]), outFilename(argv[2]);
	const short size = 9; // The given size of the board of Sudoku.
	try {
		// Create a (size x size) sodoku puzzle (default: 9x9).
		Sudoku3 puzzle;
		cout << "* Created " << size << 'x' << size \
			<< " Sodoku puzzle." << endl;
		// Reading the file.
		cout << "* Reading the input file, " << inFilename << endl;
		puzzle.read(inFilename);
		cout << "* Solving..." << endl;
		if (puzzle.solve()) {
			cout << "* Solved, and writing to the output file, " \
			<< outFilename << endl;
			puzzle.write(outFilename);
		}
		else
			cout << "* Unsolvable puzzle. Nothing is written." << endl;
	}
	catch(BadSize e) {
		std::cerr << "* Bad size of the board (grid) is given.\n";
		std::exit(1);
	}
	catch(BadInput e) {
		std::cerr << "* Bad input is given.\n";
		std::exit(1);
	}
	catch(BadValue e) {
		std::cerr << "* Bad value is given in the input.\n";
		std::exit(1);
	}
	catch(NoInputFile e) {
		std::cerr << "* File, " << inFilename << ", does not exist.\n";
		std::exit(1);
	}
	catch(InvalidPuzzle e) {
		std::cerr << "* Given puzzle is invalid.\n";
		std::cerr << "  Causes: (1) Any given value is not following" \
			<< " the rule, or (2) any given value is not in the" \
			<< " range.\n";
		std::exit(1);
	};
	return 0;
};
void HHRNR2Json::writeAlignmentResults2JsonFile() {
	string outFilename(outputFileLocation);
	outFilename += outputJsonFilename;
	ofstream outputFile(outFilename.c_str());
	outputFile << "{" << "\n";
	for (int i = 0; i < HHRNRResultVector.size(); i++) {
		outputFile << "\"protein" << i << "\":{\n";
		outputFile << "\t\"proteinName\":\""
				<< HHRNRResultVector[i].getProteinName() << "\",\n";
		outputFile << "\t\"probab\":\"" << HHRNRResultVector[i].getProbab()
				<< "\",\n";
		outputFile << "\t\"eValue\":\"" << HHRNRResultVector[i].getExpect()
				<< "\",\n";
		outputFile << "\t\"score\":\"" << HHRNRResultVector[i].getScore()
				<< "\",\n";
		outputFile << "\t\"alignedCols\":\""
				<< HHRNRResultVector[i].getAlignedCols() << "\",\n";
		outputFile << "\t\"identities\":\""
				<< HHRNRResultVector[i].getIdentities() << "\",\n";
		outputFile << "\t\"similarity\":\""
				<< HHRNRResultVector[i].getSimilarities() << "\",\n";
		outputFile << "\t\"sumProbs\":\"" << HHRNRResultVector[i].getSumProbs()
				<< "\",\n";
		outputFile << "\t\"QuerySSPred\":\""
				<< HHRNRResultVector[i].getQuerySsPred() << "\",\n";
		outputFile << "\t\"QueryStart\":\""
				<< HHRNRResultVector[i].getQueryStart() << "\",\n";
		outputFile << "\t\"Query\":\"" << HHRNRResultVector[i].getQuery()
				<< "\",\n";
		outputFile << "\t\"QueryEnd\":\"" << HHRNRResultVector[i].getQueryEnd()
				<< "\",\n";
		outputFile << "\t\"QueryConsensus\":\""
				<< HHRNRResultVector[i].getQueryConsensus() << "\",\n";
		outputFile << "\t\"alignment\":\""
				<< HHRNRResultVector[i].getAlignment() << "\",\n";
		outputFile << "\t\"TargetStart\":\""
				<< HHRNRResultVector[i].getTargetStart() << "\",\n";
		outputFile << "\t\"TargetConsensus\":\""
				<< HHRNRResultVector[i].getTargetConsensus() << "\",\n";
		outputFile << "\t\"TargetEnd\":\""
				<< HHRNRResultVector[i].getTargetEnd() << "\",\n";
		outputFile << "\t\"target\":\"" << HHRNRResultVector[i].getTarget()
				<< "\",\n";
		outputFile << "\t\"tPred\":\"" << HHRNRResultVector[i].getTargetSsPred()
				<< "\"\n";
		outputFile << "},\n";
	}
	outputFile << "\"finish\":\"end\"" << "\n";
	outputFile << "}" << "\n";

	outputFile.close();
}
void BLANR2Json::writeAlignmentResults2JsonFile() {
	string outFilename(outputFileLocation);
	outFilename += outputJsonFilename;

	ofstream outputFile(outFilename.c_str());
	outputFile << "{" << "\n";

	for (int i = 0; i < BLANRResultVector.size(); i++) {
		outputFile << "\"protein" << i << "\":{\n";
		outputFile << "\t\"proteinName\":\""
				<< BLANRResultVector[i].getProteinName() << "\",\n";
		outputFile << "\t\"Length\":\"" << BLANRResultVector[i].getLength()
				<< "\",\n";
		outputFile << "\t\"Score\":\"" << BLANRResultVector[i].getScore()
				<< "\",\n";
		outputFile << "\t\"Expect\":\"" << BLANRResultVector[i].getExpect()
				<< "\",\n";
		outputFile << "\t\"Identities\":\""
				<< BLANRResultVector[i].getIdentities() << "\",\n";
		outputFile << "\t\"Positives\":\""
				<< BLANRResultVector[i].getPositives() << "\",\n";
		outputFile << "\t\"Gaps\":\"" << BLANRResultVector[i].getGaps()
				<< "\",\n";
		outputFile << "\t\"QueyStart\":\""
				<< BLANRResultVector[i].getQueryStart() << "\",\n";
		outputFile << "\t\"Query\":\"" << BLANRResultVector[i].getQuery()
				<< "\",\n";
		outputFile << "\t\"QueryEnd\":\"" << BLANRResultVector[i].getQueryEnd()
				<< "\",\n";
		outputFile << "\t\"Alignment\":\""
				<< BLANRResultVector[i].getAlignment() << "\",\n";
		outputFile << "\t\"SubjectStart\":\""
				<< BLANRResultVector[i].getSubjectStart() << "\",\n";
		outputFile << "\t\"Subject\":\"" << BLANRResultVector[i].getSubject()
				<< "\",\n";
		outputFile << "\t\"SubjectEnd\":\""
				<< BLANRResultVector[i].getSubjectEnd() << "\"\n";
		outputFile << "},\n";
	}
	outputFile << "\"finish\":\"end\"" << "\n";
	outputFile << "}" << "\n";

	outputFile.close();
}
Esempio n. 7
0
void ModelBaker::exportScene() {
    // save the relative path to this FBX inside our passed output folder
    auto fileName = _modelURL.fileName();
    auto baseName = fileName.left(fileName.lastIndexOf('.'));
    auto bakedFilename = baseName + BAKED_FBX_EXTENSION;

    _bakedModelFilePath = _bakedOutputDir + "/" + bakedFilename;

    auto fbxData = FBXWriter::encodeFBX(_rootNode);

    QFile bakedFile(_bakedModelFilePath);

    if (!bakedFile.open(QIODevice::WriteOnly)) {
        handleError("Error opening " + _bakedModelFilePath + " for writing");
        return;
    }

    bakedFile.write(fbxData);

    _outputFiles.push_back(_bakedModelFilePath);

#ifdef HIFI_DUMP_FBX
    {
        FBXToJSON fbxToJSON;
        fbxToJSON << _rootNode;
        QFileInfo modelFile(_bakedModelFilePath);
        QString outFilename(modelFile.dir().absolutePath() + "/" + modelFile.completeBaseName() + "_FBX.json");
        QFile jsonFile(outFilename);
        if (jsonFile.open(QIODevice::WriteOnly)) {
            jsonFile.write(fbxToJSON.str().c_str(), fbxToJSON.str().length());
            jsonFile.close();
        }
    }
#endif

    qCDebug(model_baking) << "Exported" << _modelURL << "with re-written paths to" << _bakedModelFilePath;
}
//==============================================================================
// InitializeReporting                                           PUBLIC STATIC
//==============================================================================
//
OSCL_EXPORT_REF void
UT::CM::InitializeReporting
(
    const char* a_pszTestname,
    OSCL_HeapString<OsclMemAllocator>& a_filename,
    FILE* a_pFileStreamParent,
    FILE*& a_pFileStreamChild
)
{
    a_pFileStreamChild = a_pFileStreamParent;

    if (0 == a_pszTestname || 0 >= a_filename.get_size() || 0 == a_pFileStreamParent)
        return;

    Oscl_FileServer fs;
    fs.Connect();

    Oscl_File f;
    if (0 == f.Open(a_filename.get_cstr(), Oscl_File::MODE_READWRITE | Oscl_File::MODE_TEXT, fs))
    {
        _STRING xfr = xml_test_interpreter::unexpected_termination_interpretation(a_pszTestname);
        f.Write(xfr.c_str(), sizeof(char), oscl_strlen(xfr.c_str()));
        f.Close();
    }
    else
    {
        fprintf(a_pFileStreamParent, "ERROR: Failed to open XML test summary log file (%s).\n", a_filename.get_cstr());
    }

    fs.Close();

    OSCL_HeapString<OsclMemAllocator> outFilename(a_filename);
    outFilename += ".out";
    // open a new stream to file and return it to client
    a_pFileStreamChild = fopen(outFilename.get_cstr(), "w");
}
//==============================================================================
// FinalizeReporting                                             PUBLIC STATIC
//==============================================================================
//
OSCL_EXPORT_REF void
UT::CM::FinalizeReporting
(
    const char* a_pszTestname,
    OSCL_HeapString<OsclMemAllocator> &a_filename,
    const test_result& a_tr,
    FILE* a_pFileStreamParent,
    FILE* a_pFileStreamChild
)
{
    if (0 == a_pFileStreamChild)
        return;

    //                     report the textual representation of the test results
    text_test_interpreter interp;
    _STRING rs = interp.interpretation(a_tr);
    fprintf(a_pFileStreamChild, "%s", rs.c_str());

    if (0 == a_pszTestname || 0 >= a_filename.get_size() || 0 == a_pFileStreamParent)
        return;

    _STRING strChild;

    fclose(a_pFileStreamChild);                              // close the stream

    OSCL_HeapString<OsclMemAllocator> outFilename(a_filename);
    outFilename += ".out";

    FILE* pFile = fopen(outFilename.get_cstr(), "rb");
    if (0 == pFile)
        fprintf(a_pFileStreamParent, "ERROR: Failed to open file (%s) for capturing test output!\n", outFilename.get_cstr());
    else
    {
        fseek(pFile, 0, SEEK_END);
        long lSize = ftell(pFile);
        rewind(pFile);
        char* buffer = new char[lSize];
        fread(buffer, 1, lSize, pFile);
        strChild = _STRING(buffer, lSize);
        fprintf(a_pFileStreamParent, "%s", strChild.c_str()); // send the captured output back out the parent stream
        delete [] buffer;
        fclose(pFile);
    }

    Oscl_FileServer fs;
    fs.Connect();

    Oscl_File f;
    if (0 == f.Open(a_filename.get_str(), Oscl_File::MODE_READWRITE | Oscl_File::MODE_TEXT, fs))
    {
        _STRING xfr = xml_test_interpreter::interpretation(a_tr, a_pszTestname, &strChild);
        fprintf(a_pFileStreamParent, "\nWrote xml-formatted test results to file: %s\n", a_filename.get_cstr());
        f.Write(xfr.c_str(), sizeof(char), oscl_strlen(xfr.c_str()));
        f.Close();
    }
    else
    {
        fprintf(a_pFileStreamParent, "\nERROR: Failed to open file (%s) for xml-formatted test results\n", a_filename.get_cstr());
    }

    fs.Close();
}