1

51 lines
1.2 KiB
Python

from typing import List
from pathlib import Path
HOU_EDITIONS = ["core", "fx", "indie", "apprentice"]
"""All possible Houdini editions."""
def get_binary_name_for_edition(edition: str) -> str:
"""Get the appropriate binary name for the given Houdini edition.
Args:
edition (str): Hooudini edition
Returns:
str: Binary name
"""
if edition in ["core", "fx"]:
return f"houdini{edition}"
else:
return "houdini"
def get_houdini_edition_args(edition: str) -> List[str]:
"""Get the appropriate arguments to launch a given Houdini edition.
Args:
edition (str): Houdini edition
Returns:
List[str]: Arguments
"""
if edition in ["indie", "apprentice"]:
return [f"-{edition}"]
else:
return []
def noncomercialize_path(input_path: Path) -> Path:
# Figure out the noncomercial version of the path
path_suffix = input_path.suffix
noncomercial_path = input_path.with_suffix(f".{path_suffix}nc")
# If the NC version exists, use it
if noncomercial_path.exists():
return noncomercial_path
# All other cases, use the input directly
return input_path