function _fnCallbackFire( settings, callbackArr, eventName, args )
	{
		var ret = [];
	
		if ( callbackArr ) {
			ret = $.map( settings[callbackArr].slice().reverse(), function (val, i) {
				return val.fn.apply( settings.oInstance, args );
			} );
		}
	
		if ( eventName !== null ) {
			var e = $.Event( eventName+'.dt' );
	
			$(settings.nTable).trigger( e, args );
	
			ret.push( e.result );
		}
	
		return ret;
	}
Fire callback functions and trigger events. Note that the loop over the
callback array store is done backwards! Further note that you do not want to
fire off triggers in time sensitive applications (for example cell creation)
as its slow.
 @param {object} settings dataTables settings object
 @param {string} callbackArr Name of the array storage for the callbacks in
     oSettings
 @param {string} eventName Name of the jQuery custom event to trigger. If
     null no trigger is fired
 @param {array} args Array of arguments to pass to the callback function /
     trigger
 @memberof DataTable#oApi