/********************************************************************************
 * Copyright (c) 2015-2018 Contributors to the Eclipse Foundation
 *
 * See the NOTICE file(s) distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 ********************************************************************************/
import {Node} from '../../../navigator/node';

export class ChannelSelectionRow {
  channelGroup: Node;
  xChannel: Node;
  yChannel: Node;

  constructor(channelGroup: Node, yChannel: Node, xChannel?: Node) {
    this.channelGroup = channelGroup;
    this.yChannel = yChannel;
    this.xChannel = xChannel;
  }
}
