function _fnReDraw( settings, holdPosition )
		{
			var
				features = settings.oFeatures,
				sort     = features.bSort,
				filter   = features.bFilter;
		
			if ( sort ) {
				_fnSort( settings );
			}
		
			if ( filter ) {
				_fnFilterComplete( settings, settings.oPreviousSearch );
			}
			else {
				// No filtering, so we want to just use the display master
				settings.aiDisplay = settings.aiDisplayMaster.slice();
			}
		
			if ( holdPosition !== true ) {
				settings._iDisplayStart = 0;
			}
		
			// Let any modules know about the draw hold position state (used by
			// scrolling internally)
			settings._drawHold = holdPosition;
		
			_fnDraw( settings );
		
			settings._drawHold = false;
		}
/**
		 * Redraw the table - taking account of the various features which are enabled
		 *  @param {object} oSettings dataTables settings object
		 *  @param {boolean} [holdPosition] Keep the current paging position. By default
		 *    the paging is reset to the first page
		 *  @memberof DataTable#oApi
		 */
Redraw the table - taking account of the various features which are enabled
@param {object} oSettings dataTables settings object
@param {boolean} [holdPosition] Keep the current paging position. By default
the paging is reset to the first page
@memberof DataTable#oApi
Redraw the table - taking account of the various features which are enabled @param { object } oSettings dataTables settings object @param { boolean } [ holdPosition ] Keep the current paging position . By default the paging is reset to the first page @memberof DataTable#oApi
function _fnReDraw( settings, holdPosition )
		{
			var
				features = settings.oFeatures,
				sort     = features.bSort,
				filter   = features.bFilter;
			if ( sort ) {
				_fnSort( settings );
			}
			if ( filter ) {
				_fnFilterComplete( settings, settings.oPreviousSearch );
			}
			else {
				settings.aiDisplay = settings.aiDisplayMaster.slice();
			}
			if ( holdPosition !== true ) {
				settings._iDisplayStart = 0;
			}
			settings._drawHold = holdPosition;
			_fnDraw( settings );
			settings._drawHold = false;
		}
function _fnReDraw ( settings , holdPosition ) { var features = settings . oFeatures , sort = features . bSort , filter = features . bFilter ; if ( sort ) { _fnSort ( settings ) ; } if ( filter ) { _fnFilterComplete ( settings , settings . oPreviousSearch ) ; } else { settings . aiDisplay = settings . aiDisplayMaster . slice ( ) ; } if ( holdPosition !== true ) { settings . _iDisplayStart = 0 ; } settings . _drawHold = holdPosition ; _fnDraw ( settings ) ; settings . _drawHold = false ; }
Redraw the table - taking account of the various features which are enabled
  @param {object} oSettings dataTables settings object
  @param {boolean} [holdPosition] Keep the current paging position.
Redraw the table - taking account of the various features which are enabled @param { object } oSettings dataTables settings object @param { boolean } [ holdPosition ] Keep the current paging position .
// No filtering, so we want to just use the display master // Let any modules know about the draw hold position state (used by // scrolling internally)