//-----------------------------------------------------------------------------
// File: WirePortColumns.h
//-----------------------------------------------------------------------------
// Project: Kactus2
// Author: Esko Pekkarinen
// Date: 26.01.2015
//
// Description:
// Common declarations for editing wire ports.
//-----------------------------------------------------------------------------

#ifndef WIRE_PORT_COLUMNS_H
#define WIRE_PORT_COLUMNS_H

namespace WirePortColumns
{
    //-----------------------------------------------------------------------------
    // Constants defining which column represents what kind of information.
    //-----------------------------------------------------------------------------
    enum Columns
    {
        ROW_NUMBER = 0,     //!< Column for the row number.
        NAME ,              //!< Column for the port name.
        DIRECTION,          //!< Column for the port direction.
        LEFT_BOUND,         //!< Column for specifying the left bound of the port.
        RIGHT_BOUND,        //!< Column for specifying the right bound of the port.
        WIDTH,              //!< Column for the port width.
        TYPE_NAME,          //!< Column for the port typename.
        DEFAULT_VALUE,      //!< Column for setting the default value for the port.
        ARRAY_LEFT,         //!< Column for setting the left side of the array.
        ARRAY_RIGHT,        //!< Column for setting the right side of the array.
        TAG_GROUP,          //!< Column for tagging a port.
        ADHOC_VISIBILITY,   //!< Column for toggling ad-hoc visibility on/off.
        DESCRIPTION,        //!< Column for adding a description for the port.
        COLUMN_COUNT
    };
}

#endif // WIRE_PORT_COLUMNS_H