Skip to content

Update Operator::isOptionalInput logic with new InputCategory Enum.

Cyril Moineau requested to merge FixOperatorIsOptional into dev

Context

Operator::isOptionalInput was:

inline bool isOptionalInput(std::size_t inputIdx) const {
        return static_cast<int>(mInputsCategory[inputIdx]) > 1;
    }

Since input Categroy was

enum class InputCategory {
    Data,          /**< Regular data input. */
    Param,         /**< Parameter input. */
    OptionalData,  /**< Optional data input. */
    OptionalParam  /**< Optional parameter input. */
}

But now it is:

enum class InputCategory : unsigned int {
    Optional = 1 << 0, // First bit indicate if optional
    Data = 1 << 1, /**< Regular data input. */
    OptionalData = (1 << 1) | Optional, /**< Optional data input. */
    Param = 1 << 2,  /**< Parameter input. */
    OptionalParam = (1 << 2) | Optional, /**< Optional parameter input. */
    All = static_cast<unsigned int>(-1)
};

So isOptionalInput is not correct anymore.

Modified files

  • Operator.hpp fix isOptionalInput

Merge request reports

Loading