function _fnAddColumn( oSettings, nTh )
		{
			// Add column to aoColumns array
			var oDefaults = DataTable.defaults.column;
			var iCol = oSettings.aoColumns.length;
			var oCol = $.extend( {}, DataTable.models.oColumn, oDefaults, {
				"nTh": nTh ? nTh : document.createElement('th'),
				"sTitle":    oDefaults.sTitle    ? oDefaults.sTitle    : nTh ? nTh.innerHTML : '',
				"aDataSort": oDefaults.aDataSort ? oDefaults.aDataSort : [iCol],
				"mData": oDefaults.mData ? oDefaults.mData : iCol,
				idx: iCol
			} );
			oSettings.aoColumns.push( oCol );
		
			// Add search object for column specific search. Note that the `searchCols[ iCol ]`
			// passed into extend can be undefined. This allows the user to give a default
			// with only some of the parameters defined, and also not give a default
			var searchCols = oSettings.aoPreSearchCols;
			searchCols[ iCol ] = $.extend( {}, DataTable.models.oSearch, searchCols[ iCol ] );
		
			// Use the default column options function to initialise classes etc
			_fnColumnOptions( oSettings, iCol, $(nTh).data() );
		}
/**
		 * Add a column to the list used for the table with default values
		 *  @param {object} oSettings dataTables settings object
		 *  @param {node} nTh The th element for this column
		 *  @memberof DataTable#oApi
		 */
Add a column to the list used for the table with default values
@param {object} oSettings dataTables settings object
@param {node} nTh The th element for this column
@memberof DataTable#oApi
Add a column to the list used for the table with default values @param { object } oSettings dataTables settings object @param { node } nTh The th element for this column @memberof DataTable#oApi
function _fnAddColumn( oSettings, nTh )
		{
			var oDefaults = DataTable.defaults.column;
			var iCol = oSettings.aoColumns.length;
			var oCol = $.extend( {}, DataTable.models.oColumn, oDefaults, {
				"nTh": nTh ? nTh : document.createElement('th'),
				"sTitle":    oDefaults.sTitle    ? oDefaults.sTitle    : nTh ? nTh.innerHTML : '',
				"aDataSort": oDefaults.aDataSort ? oDefaults.aDataSort : [iCol],
				"mData": oDefaults.mData ? oDefaults.mData : iCol,
				idx: iCol
			} );
			oSettings.aoColumns.push( oCol );
			var searchCols = oSettings.aoPreSearchCols;
			searchCols[ iCol ] = $.extend( {}, DataTable.models.oSearch, searchCols[ iCol ] );
			_fnColumnOptions( oSettings, iCol, $(nTh).data() );
		}
function _fnAddColumn ( oSettings , nTh ) { var oDefaults = DataTable . defaults . column ; var iCol = oSettings . aoColumns . length ; var oCol = $ . extend ( { } , DataTable . models . oColumn , oDefaults , { "nTh" : nTh ? nTh : document . createElement ( 'th' ) , "sTitle" : oDefaults . sTitle ? oDefaults . sTitle : nTh ? nTh . innerHTML : '' , "aDataSort" : oDefaults . aDataSort ? oDefaults . aDataSort : [ iCol ] , "mData" : oDefaults . mData ? oDefaults . mData : iCol , idx : iCol } ) ; oSettings . aoColumns . push ( oCol ) ; var searchCols = oSettings . aoPreSearchCols ; searchCols [ iCol ] = $ . extend ( { } , DataTable . models . oSearch , searchCols [ iCol ] ) ; _fnColumnOptions ( oSettings , iCol , $ ( nTh ) . data ( ) ) ; }
Add a column to the list used for the table with default values
  @param {object} oSettings dataTables settings object
  @param {node} nTh The th element for this column
  @memberof DataTable#oApi
Add a column to the list used for the table with default values @param { object } oSettings dataTables settings object @param { node } nTh The th element for this column @memberof DataTable#oApi
// Add column to aoColumns array // Add search object for column specific search. Note that the `searchCols[ iCol ]` // passed into extend can be undefined. This allows the user to give a default // with only some of the parameters defined, and also not give a default // Use the default column options function to initialise classes etc