## module:Blackbox(appInstance, inputConnectors, outputConnectors, evalFunction, nameopt)

Blackbox is a box that is defined by its evaluation function

#### new module:Blackbox(appInstance, inputConnectors, outputConnectors, evalFunction, nameopt)
`modules/editorElements/Blackbox.js`, `line 19`

  ##### Parameters:

  Name | Type | Attributes | Description
  --- | --- | --- | ---
  `appInstance` | App |  | instance of App
  `inputConnectors` | number |  | number of input connectors
  `outputConnectors` | number |  | number of output connectors
  `evalFunction` | function |  | function that takes `inputConnectors` Logic.states and returns `outputConnectors` Logic.states.
  `name` | String | <optional> | name that will be displayed on the blackbox

### Extends

- Box

### Members

#### evalFunction
`modules/editorElements/Blackbox.js`, `line 119`

  function that takes `inputConnectors` Logic.states and returns `outputConnectors` Logic.states.

#### exportData
`modules/editorElements/Blackbox.js`, `line 129`

  get data of this blackbox as a JSON-ready object

### Methods

#### refreshState()
`modules/editorElements/Blackbox.js`, `line 185`

  proccess the input connector states and reflect them in the output connector states according to the logic defined by this.evalFunction