Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Agilent4279A.h

Go to the documentation of this file.
00001 /*
00002  * Time-stamp: <00/08/03 23:02:44 pagey>
00003  *
00004  * $Id: Agilent4279A.h,v 1.3 2000/08/04 07:03:16 pagey Exp $      
00005  *
00006  *
00007  */
00008 #ifndef Agilent4279A_h
00009 #define Agilent4279A_h
00010 
00011 #include <vector>
00012 #include <pair.h>
00013 #include "GPIBEquipment.h"
00014 #include "LibGPIB.h"
00015 
00016 extern "C++" {
00017   namespace LibGPIB {
00025     class Agilent4279A : public GPIBEquipment {
00026     public:
00027 
00028       /* ----------------------------------------------------------------------
00029        * Public Static Members
00030        * ----------------------------------------------------------------------
00031        */
00041       enum MeasurementParameter {
00045         MPAR_CP_D = 1, 
00046         MPAR1     = 1,
00050         MPAR_CP_Q = 2,
00051         MPAR2     = 2,
00055         MPAR_CP_G = 3,
00056         MPAR3     = 3,
00060         MPAR_CS_D = 4,
00061         MPAR4     = 4,
00065         MPAR_CS_Q = 5,
00066         MPAR5     = 5,
00070         MPAR_CS_RS = 6,
00071         MPAR6      = 6
00072       } ;
00073 
00077       enum OscillatorLevel {
00081         OSC_20_mV = 1, 
00082 
00086         OSC_50_mV = 2,
00087 
00091         OSC_100_mV = 3, 
00092 
00096         OSC_200_mV = 4, 
00097 
00101         OSC_500_mV = 5, 
00102 
00106         OSC_1000_mV = 6
00107       } ;
00108 
00109       enum DCBias {
00113         BIAS_OFF = 0,
00114         
00118         BIAS_ON = 1
00119       } ;
00120 
00121       enum DCBiasMode {
00125         SPOT_BIAS = 1,
00126         BMOD1 = 1,
00127 
00131         PROG_SWEEP_BIAS = 2,
00132         BMOD2 = 2,
00133 
00137         EXT_BIAS = 3,
00138         BMOD3 =3
00139        } ;
00140 
00141       enum MeasurementRange {
00145         RANGE_AUTO = 0,
00146         RANG0 = 0,
00147 
00151         RANGE_2pF = 1,
00152         RANG1 = 1,
00153 
00157         RANGE_8pF = 2,
00158         RANG2 = 2,
00159 
00163         RANGE_32pF = 3,
00164         RANG3 = 3,
00165 
00169         RANGE_128pF = 4,
00170         RANG4 = 4,
00171 
00175         RANGE_512pF = 5,
00176         RANG5 = 5,
00177 
00181         RANGE_1024pF = 6,
00182         RANG6 = 6
00183       } ;
00184 
00185       enum AutoBiasPolarity {
00189         AUTO_BIAS_POLARITY_OFF = 0,
00190         APOL0 = 0,
00191 
00195         AUTO_BIAS_POLARITY_ON = 1,
00196         APOL1 = 1
00197       } ;
00198 
00199 
00200       enum IntegrationTime {
00204         INTEGRATION_TIME_SHORT = 1,
00205         ITIM1 = 1,
00206 
00210         INTEGRATION_TIME_MEDIUM = 2,
00211         ITIM2 = 2,
00212 
00216         INTEGRATION_TIME_LONG = 3,
00217         ITIM3 = 3
00218       } ;
00219 
00220       enum TriggerMode {
00224         INT_TRIG = 1,
00225         TRIG1 = 1,
00226 
00230         EXT_TRIG = 2,
00231         TRIG2 = 2,
00232 
00236         MAN_TRIG = 3,
00237         TRIG3 = 3
00238       } ;
00239 
00240       enum CableLengthValue {
00242         LENGTH_0METER = 0, 
00243         CABL0 = 0, 
00244 
00246         LENGTH_1METER = 1, 
00247         CABL1 = 1, 
00248 
00250         LEGNTH_2METER = 2,
00251         CABL2 = 2
00252       } ;
00253 
00254       enum OpenCompensations {
00258         OPEN_COMPENSATION_INVALID = 0,
00259         OPEN0 = 0,
00263         OPEN_COMPENSATION_VALID = 1,
00264         OPEN1 = 1
00265       } ;
00266 
00267       enum ShortCompensations {
00271         SHORT_COMPENSATION_INVALID = 0,
00272         SHOR0 = 0,
00273 
00277         SHORT_COMPENSATION_VALID = 1,
00278         SHOR1 = 1
00279       } ;
00280 
00281       enum StandardCompMode {
00285         C_D = 1,
00286         SPAR1 = 1,
00287 
00291         C_G = 2,
00292         SPAR2 = 2
00293       } ;
00294 
00295       enum StdCompValid {
00299         STD_COMPENSATION_INVALID = 0,
00300         STD0 = 0,
00301 
00305         STD_COMPENSATION_VALID = 1,
00306         STD1 = 1
00307       } ;
00308 
00309       enum OffsetA {
00313         OFFSET_A_INVALID = 0,
00314         AOFF0 = 0,
00315 
00319         OFFSET_A_VALID = 1, 
00320         AOFF1 = 1
00321       } ;
00322 
00323       enum OffsetB {
00327         OFFSET_B_INVALID = 0,
00328         BOFF0 = 0,
00329         
00333         OFFSET_B_VALID = 1,
00334         BOFF1 = 1
00335       } ;
00336 
00337       enum DisplayPage {
00341         MEAS_PAGE = 1,
00342         DPAG1 = 1,
00343 
00347         STATUS_PAGE = 2,
00348         DPAG2 = 2,
00349         
00353         BLANK_PAGE = 3,
00354         DPAG3 = 3
00355       } ;
00356 
00357       enum MonitorDisplay {
00361         MONITOR_DISPLAY_OFF = 0,
00362         VMON0 = 0,
00363 
00367         MONITOR_DISPLAY_OPEN = 1,
00368         VMON1 = 1,
00369 
00373         MONITOR_DISPLAY_SHORT = 2,
00374         VMON2 = 2,
00375         
00379         MONITOR_DISPLAY_STD_MEAS = 3,
00380         VMOS3 = 3,
00381         
00385         MONITOR_DISPLAY_STD_REF = 4,
00386         VMOS4 = 4,
00387 
00391         MONITOR_DISPLAY_OFFSET = 5,
00392         VMOS5 = 5 
00393       } ;
00394 
00396 
00397 
00401       typedef MeasurementRange AutoBiasRange ;
00403 
00411       class InvalidParameter {
00412       public:
00429         InvalidParameter( const string class_name, 
00430                           const string file_name, 
00431                           const string function_name,
00432                           int line_number ) { /* does nothing for now. */ }
00433         
00434       } ;
00436 
00440       
00442 
00455       void SetMeasurementParameter(enum MeasurementParameter mparam) ;
00456 
00463       void SetOscillatorLevel (enum OscillatorLevel mparam) ;
00464 
00473       void SetDCBias (enum DCBias mparam) ;
00474 
00479       void SetDCBiasMode (enum DCBiasMode mparam) ;
00480 
00486       void SetDCSpotBiasVoltage (double bias_value) ;
00487 
00494       void CreateSweepPointTable ( vector<pair<double, enum MeasurementRange> >& bias_range_table ) ;
00495       
00500       void SetAutoBiasPolarity (enum AutoBiasPolarity mparam);
00501 
00506       void SetAutoBiasPolarityRange (enum AutoBiasRange mparam) ;
00507 
00513       void SetIntegrationTime (enum IntegrationTime mparam) ;
00514 
00519       void SetAveragingRate (int ave_rate) ;
00520 
00525       void SetTriggerDelayTime (double delay) ;
00526 
00531       void SetStepDelayTime (double delay) ;
00532 
00537       void SetCableLength (enum CableLengthValue length) ;
00538 
00543       void SetTriggerMode (enum TriggerMode mparam) ;
00544       
00550       void SetOpenCompensations (enum OpenCompensations mparam) ;
00551 
00555       void MakeOpenMeasurment () ;
00556 
00564       void GetOpenMeasurementData (double& capacitance, double& conductance) ;
00565       
00570       void SetShortCompensations (enum ShortCompensations mparam) ;
00571 
00575       void MakeShortMeasurement () ;
00576 
00583       void GetShortMeasurementData (double& inductance, double& resistance);
00584 
00589       void SetStandardCompMode (enum StandardCompMode mparam) ;
00590 
00598       void SetStandardCompRefCap (float c_value) ;
00599 
00609       void SetStandardCompRefDissFact (float d_value) ;
00610 
00616       void SetStandardCompRefCond (float g_value) ;
00617 
00621       void MakeStandardCompMeasurement () ;
00622 
00629       void SetStdCompDataValid (enum StdCompValid mparam) ;
00630       
00634       void GetStdCompMeasData (double& capacitance, double& dissipation_factor) ;
00635       
00639       void GetStdCompRefData (double& capacitance, double& dissipation_factor) ;
00640       
00646       void SetCompDataNum (int value);
00647 
00651       void ExecuteTempComp () ;
00652       
00659       void SetOffsetA (enum OffsetA mparam) ;
00660       
00667       void SetOffsetB (enum OffsetB mparam) ;
00668       
00672       void SetOffAData (float data) ;
00673       
00677       void SetOffBData (float data) ;
00678       
00686       void SetDisplayPage (enum DisplayPage page) ;
00687       
00696       void SetDisplayDigits (int num_of_digits) ;
00697 
00708       void SetMonitorDisplay (enum MonitorDisplay display_mode) ;
00709 
00711 
00715 
00716 
00717       /* ----------------------------------------------------------------------
00718        * Friends
00719        * ----------------------------------------------------------------------
00720        */
00721     protected:
00722       /* ----------------------------------------------------------------------
00723        * Protected Data Members
00724 
00725        * ----------------------------------------------------------------------
00726        */
00727       /* ----------------------------------------------------------------------
00728        * Protected Methods
00729        * ----------------------------------------------------------------------
00730        */
00731     private:
00732       /* ----------------------------------------------------------------------
00733        * Private Data Members
00734        * ----------------------------------------------------------------------
00735        */
00736       /* ----------------------------------------------------------------------
00737        * Private Methods
00738        * ----------------------------------------------------------------------
00739        */
00740     } ; // class Agilent4279A
00741   } ; // namespace LibGPIB
00742 } // extern "C++"
00743 #endif // #ifndef Agilent4279A_h

Generated at Tue Aug 8 01:37:55 2000 for libgpib by doxygen1.1.4 written by Dimitri van Heesch, © 1997-2000