/******************************************************************************
 *                                                                         
 *               Copyright 2004-2006 Agilent Technologies
 *               All rights reserved.
 *
 *****************************************************************************/
 
#include "stdafx.h"
#include "CoAgilent34951A.h"



/// <summary>
/// Configures the current output.
/// </summary>
/// <remarks>
/// 
/// </remarks>
/// <returns>
///	
/// </returns>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
/// <param name="Level">
///	Desired current level in Amps. Specify any value between -20 mA and +20 mA, with 630 nA resolution
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_Configure(BSTR ChannelList, double Level)
{
	HRESULT hr = S_OK;

	hr = InstrPrintCommand();

	return hr;
}


/// <summary>
///	Sets or gets the output current level on the specified channels.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_get_Level(BSTR ChannelList, double* val)
{
	HRESULT hr = S_OK;

	hr = InstrQueryCommand(val);

	return hr;
}


/// <summary>
///	Sets or gets the output current level on the specified channels.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_put_Level(BSTR ChannelList, double val)
{
	HRESULT hr = S_OK;

	hr = InstrPrintCommand();

	return hr;
}


/// <summary>
///	Sets or gets a current gain for scaled trace outputs on the specified channels on the 34951A Isolated DAC Module.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_get_Gain(BSTR ChannelList, double* val)
{
	HRESULT hr = S_OK;

	hr = InstrQueryCommand(val);

	return hr;
}


/// <summary>
///	Sets or gets a current gain for scaled trace outputs on the specified channels on the 34951A Isolated DAC Module.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_put_Gain(BSTR ChannelList, double val)
{
	HRESULT hr = S_OK;

	hr = InstrPrintCommand();

	return hr;
}


/// <summary>
///	Sets or gets a current offset for scaled trace outputs on the specified channels on the 34951A Isolated DAC Module.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_get_Offset(BSTR ChannelList, double* val)
{
	HRESULT hr = S_OK;

	hr = InstrQueryCommand(val);

	return hr;
}


/// <summary>
///	Sets or gets a current offset for scaled trace outputs on the specified channels on the 34951A Isolated DAC Module.
/// </summary>
/// <remarks>
///	
/// </remarks>
/// <param name="ChannelList">
///	One or more channels in the form sccc. Select from s001, s002, s003, or s004
/// </param>
HRESULT Agilent34951A::IAgilent34951ACurrent_put_Offset(BSTR ChannelList, double val)
{
	HRESULT hr = S_OK;

	hr = InstrPrintCommand();

	return hr;
}


