Scaleout with IB Controller Method

My intial position is say 100 stocks, I want to scale out 40 stocks at first target, 40 stocks at second target and balance 20 stocks on tradereversal. I want to scaleout using Buy[ i ] = sigScaleOut;` `SetPositionSize( 40, Buy == sigScaleOut, spsShares);

To place a Limit Sell order through IB Controller, the method requires that an order be placed in the following format :-

OrderID = ib.PlaceOrder(sTicker, "SELL", Quantity , "MKT", 0, 0, "GTC", True, tickMult);

Please suggest how to pass on scaleout number 40/40/20 in place of Quantity in the above IB Controller method, triggered at different times in the FOR loop.