application: prophecy [
  documentation: "Create frequency matrix or profile from a multiple alignment"
  groups: "Nucleic:Profiles, Protein:Profiles"
]

section: input [
  information: "Input section"
  type: "page"
]

  seqset: sequence [
    parameter: "Y"
    type: "gapany"
    aligned: "Y"
  ]

  list: type [
    standard: "Y"
    default: "F"
    minimum: "1"
    maximum: "1"
    values: "F:Frequency,G:Gribskov,H:Henikoff"
    delimiter: ","
    codedelimiter: ":"
    header: "Profile type"
    information: "Select type"
    button: "Y"
  ]

  matrixf: datafile [
    standard: "@($(type) != F)"
    information: "Scoring matrix"
    default: "@($(type) = G: Epprofile H: EBLOSUM62 F: EBLOSUM62)"
    protein: "$(acdprotein)"
    expected: "'Epprofile' for Gribskov type, or EBLOSUM62"
  ]

endsection: input

section: required [
  information: "Required section"
  type: "page"
]

  string: name [
    standard: "Y"
    default: "mymatrix"
    information: "Enter a name for the profile"
    knowntype: "name"
  ]

  section: profiletypesection [
    information: "Profile type specific options"
    type: "frame"
  ]

    integer: threshold [
      standard: "@($(type) == F)"
      default: "75"
      minimum: "1"
      maximum: "100"
      information: "Enter threshold reporting percentage"
    ]

  endsection: profiletypesection

  section: gapsection [
    information: "Gap options"
    type: "frame"
  ]

    float: open [
      standard: "@($(type) != F)"
      information: "Gap opening penalty"
      default: "3.0"
    ]

    float: extension [
      standard: "@($(type) != F)"
      information: "Gap extension penalty"
      default: "0.3"
    ]

  endsection: gapsection

endsection: required

section: output [
  information: "Output section"
  type: "page"
]

  outfile: outfile [
    parameter: "Y"
    knowntype: "prophecy output"
  ]

endsection: output
