---

models:
  -
    name: ascii_io_GCC
    driver: GCCModelDriver
    args: src/ascii_io.c

    inputs:
      - name: inputC_file
        driver: AsciiFileInputDriver
        args: ./Input/input_file.txt

      - name: inputC_table
        driver: AsciiTableInputDriver
        args: ./Input/input_table.txt

      - name: inputC_array
        driver: AsciiTableInputDriver
        args: ./Input/input_array.txt
        as_array: True

    outputs:
      - name: outputC_file
        driver: OutputDriver
        args: outputC_file

      - name: outputC_table
        driver: OutputDriver
        args: outputC_table
        field_names: name,number,value,complex

      - name: outputC_array
        driver: OutputDriver
        args: outputC_array
        field_names: name,number,value,complex

  -
    name: ascii_io_Python
    driver: PythonModelDriver
    args: src/ascii_io.py

    inputs:
      - name: inputPy_file
        driver: InputDriver
        args: outputC_file

      - name: inputPy_table
        driver: InputDriver
        args: outputC_table

      - name: inputPy_array
        driver: InputDriver
        args: outputC_array

    outputs:
      - name: outputPy_file
        driver: OutputDriver
        args: outputPy_file

      - name: outputPy_table
        driver: OutputDriver
        args: outputPy_table
        field_names: name,number,value,complex

      - name: outputPy_array
        driver: OutputDriver
        args: outputPy_array
        field_names: name,number,value,complex

  -
    name: ascii_io_CPP
    driver: GCCModelDriver
    args: src/ascii_io.cpp

    inputs:
      - name: inputCPP_file
        driver: InputDriver
        args: outputPy_file

      - name: inputCPP_table
        driver: InputDriver
        args: outputPy_table

      - name: inputCPP_array
        driver: InputDriver
        args: outputPy_array

    outputs:
      - name: outputCPP_file
        driver: AsciiFileOutputDriver
        args: output_file.txt
        in_temp: True

      - name: outputCPP_table
        driver: AsciiTableOutputDriver
        args: output_table.txt
        in_temp: True
        field_names: name,number,value,complex

      - name: outputCPP_array
        driver: AsciiTableOutputDriver
        args: output_array.txt
        as_array: True
        in_temp: True
        field_names: name,number,value,complex
