#include "app/nfm/nfm_base.h"

    #define MAKE_PROFILE_NFM( id, profileName_VAL, allowedInputPorts_VAL, allowedOutputPorts_VAL, defaultInputState_VAL, inputPortStates_VAL)\
    const sNFMControlSwitchProfile_t id =\
    {\
      .profileName                             = profileName_VAL,\
      .controlProfile.allowedInputPorts        = allowedInputPorts_VAL,\
      .controlProfile.allowedOutputPorts       = allowedOutputPorts_VAL,\
      .controlProfile.defaultInputState        = defaultInputState_VAL,\
      .controlProfile.inputPortStates          = inputPortStates_VAL,\
    };
//------------------------------------------------------------------------------
//                         PORTS EXTENDER
//------------------------------------------------------------------------------
//----------------------------PE750212------------------------------------------
    const eNFMPorts_t ePE750212InputAvailableStates[] = 
    {
        eNFMPort_1,
        eNFMPort_2
    };
    uint16_t ePE750212InputPortStates[sizeof(ePE750212InputAvailableStates)/sizeof(ePE750212InputAvailableStates[0])] = 
    {
        eTerminatePortState, eTerminatePortState
    };
    
    uint16_t ePE2P16TInputPortStates[sizeof(ePE750212InputAvailableStates)/sizeof(ePE750212InputAvailableStates[0])] = 
    {
        eTerminatePortState, eTerminatePortState
    };
//----------------------------PE750212------------------------------------------
    MAKE_PROFILE_NFM( nf_profile_NFM,
                      "PortsExtender",
                      2,
                      12,
                      eTerminatePortState,
                      ePE750212InputPortStates
                     );
    
    MAKE_PROFILE_NFM( nf_profile_SWB_16,
                      "PortsExtender",
                      2,
                      16,
                      eTerminatePortState,
                      ePE2P16TInputPortStates
                     );
    MAKE_PROFILE_NFM( nf_profile_SWB_8,
                      "PortsExtender",
                      2,
                      8,
                      eTerminatePortState,
                      ePE2P16TInputPortStates
                     );
        
    MAKE_PROFILE_NFM( nf_profile_PAK_LEMZ,
                      "PortsExtender",
                      2,
                      10,
                      eTerminatePortState,
                      ePE2P16TInputPortStates
                     );
