def _is_valid(cls, *args, **kwargs):
# fill our args
output_dir = args[0]
# boxlib datasets are always directories
if not os.path.isdir(output_dir): return False
header_filename = os.path.join(output_dir, "Header")
jobinfo_filename = os.path.join(output_dir, "job_info")
if not os.path.exists(header_filename):
# We *know* it's not boxlib if Header doesn't exist.
return False
args = inspect.getcallargs(cls.__init__, args, kwargs)
# This might need to be localized somehow
if args['cparam_filename'] is None:
return True # Treat as generic boxlib data
inputs_filename = os.path.join(
os.path.dirname(os.path.abspath(output_dir)),
args['cparam_filename'])
if not os.path.exists(inputs_filename) and \
not os.path.exists(jobinfo_filename):
return True # We have no parameters to go off of
# If we do have either inputs or jobinfo, we should be deferring to a
# different frontend.
return False
评论列表
文章目录