1pragma solidity >=0.0;
2import "../Oracles/MajorityOracle.sol";
3
4
5/// @title Majority oracle factory contract - Allows to create majority oracle contracts
6/// @author Stefan George - <stefan@gnosis.pm>
7contract MajorityOracleFactory {
8
9    /*
10     *  Events
11     */
12    event MajorityOracleCreation(address indexed creator, MajorityOracle majorityOracle, Oracle[] oracles);
13
14    /*
15     *  Public functions
16     */
17    /// @dev Creates a new majority oracle contract
18    /// @param oracles List of oracles taking part in the majority vote
19    /// @return majorityOracle Oracle contract
20    function createMajorityOracle(Oracle[] memory oracles)
21        public
22        returns (MajorityOracle majorityOracle)
23    {
24        majorityOracle = new MajorityOracle(oracles);
25        emit MajorityOracleCreation(msg.sender, majorityOracle, oracles);
26    }
27}
28