diff --git a/src/main/scala/eu/nomad_lab/parsers/GPAWParser.scala b/src/main/scala/eu/nomad_lab/parsers/GPAWParser.scala new file mode 100644 index 0000000000000000000000000000000000000000..5d23f911d9b69d619d3ad0ef6cc0a72ba7fccd50 --- /dev/null +++ b/src/main/scala/eu/nomad_lab/parsers/GPAWParser.scala @@ -0,0 +1,33 @@ +package eu.nomad_lab.parsers +import eu.nomad_lab.DefaultPythonInterpreter +import org.{json4s => jn} + +object GPAWParser extends SimpleExternalParserGenerator( + name = "GPAWParser", + parserInfo = jn.JObject( + ("name" -> jn.JString("GPAWParser")) :: + ("version" -> jn.JString("1.0")) :: Nil), + mainFileTypes = Seq("application/tar"), + mainFileRe = "", + cmd = Seq(DefaultPythonInterpreter.python2Exe(), "${envDir}/parsers/gpaw/parser/parser-gpaw/parser.py", + "${mainFilePath}"), + resList = Seq( + "parser-gpaw/parser.py", + "parser-gpaw/tar.py", + "parser-gpaw/setup_paths.py", + "nomad_meta_info/common.nomadmetainfo.json", + "nomad_meta_info/meta_types.nomadmetainfo.json", + "nomad_meta_info/gpaw.nomadmetainfo.json" + ) ++ DefaultPythonInterpreter.commonFiles(), + dirMap = Map( + "parser-gpaw" -> "parsers/gpaw/parser/parser-gpaw", + "nomad_meta_info" -> "nomad-meta-info/meta_info/nomad_meta_info" + ) ++ DefaultPythonInterpreter.commonDirMapping() +) { + override def isMainFile(filePath: String, bytePrefix: Array[Byte], stringPrefix: Option[String]): Option[ParserMatch] = { + if (filePath.endsWith(".gpw")) + Some(ParserMatch(mainFileMatchPriority, mainFileMatchWeak)) + else + None + } +}