Esempio n. 1
0
void readCoorFile(	const char *file,
			std::list<AtomRecord> *records)
{
static char error[1024];
if(strstr(file,".pdb") || strstr(file,".PDB"))
{
	readPDBFile(file,records); 
}
else if(strstr(file,".xyz") || strstr(file,".XYZ") )
{
	readXYZFile(file,records);
}
else
{	sprintf(error,"readCoorFile: unknown file format of %s\n"
			" Only *.pdb and *.xyz files are supported",file);
	throw error;
}

}
Esempio n. 2
0
System* MolecularFileDialog::openMolecularFile(const String& filename, 
																	 const String& filetype, 
																	 const String& system_name)
{
	bool ok = false;
	try
	{
		if (File::isReadable(filename)) ok = true;
	}
	catch(...)
	{}

	if (!ok || filename == "/" || filename == "\\") 
	{
		setStatusbarText((String)tr("Could not open file") + " " + filename, true);
		return 0;
	}

	// TODO substitue by GenericMolFile* file = MolFileFactory::open(filename);
	if (filetype.hasSubstring("pdb") || filetype.hasSubstring("PDB") ||
			filetype.hasSubstring("brk") || filetype.hasSubstring("BRK") ||
			filetype.hasSubstring("ent") || filetype.hasSubstring("ENT"))
	{
		return readPDBFile(filename, system_name);
	}
	else if (filetype.hasSubstring("HIN") ||
					 filetype.hasSubstring("hin"))
	{
		return readHINFile(filename, system_name);
	}
	else if (filetype.hasSubstring("MOL2") ||
					 filetype.hasSubstring("mol2"))
	{
		return readMOL2File(filename, system_name);
	}
	else if (filetype.hasSubstring("MOL") ||
					 filetype.hasSubstring("mol"))
	{
		return readMOLFile(filename, system_name);
	}
	else if (filetype.hasSubstring("SDF") ||
					 filetype.hasSubstring("sdf"))
	{
		return readSDFile(filename, system_name);
	}	
	else if (filetype.hasSubstring("AC") ||
					 filetype.hasSubstring("ac"))
	{
		return readACFile(filename, system_name);
	}
	else if (filetype.hasSubstring("XYZ") ||
					 filetype.hasSubstring("xyz"))
	{
		return readXYZFile(filename, system_name);
	}
	else
	{
		setStatusbarText(String(tr("Unknown filetype")) + ": " + filetype, true);
	}

	return 0;
}