Electric Tiger DAQ  1.0.0
Data Acquisition Software for the Electric Tiger Experiment
test_network_analyzer.h
1 #ifndef TEST_NETWORK_ANALYZER_H
2 #define TEST_NETWORK_ANALYZER_H
3 
4 //C System-Headers
5 //
6 //C++ System headers
7 #include <memory>
8 //Boost Headers
9 //
10 //Qt Headers
11 //
12 // JASPL Headers
13 #include "../../../JASPL/jPlot/jplot.h"
14 //Project specific headers
15 #include "network_analyzer.h"
16 #include "../../Generics/generics.h"
17 
18 template < typename T >
19 void print_vector( const std::vector<T>& vec ) {
20  for( const auto& elem: vec ) {
21  std::cout << elem << ",";
22  }
23 
24  std::cout << std::endl;
25 }
26 
27 void TestNetworkAnalyzer() {
28 
29  std::cout << "Testing Network Analyzer." << std::endl;
30 
31  const TCPSocketParam network_analyzer = TCPSocketParam( "NetworkAnalyzer", "10.95.100.176", 1234 );
32  const uint nwa_points = 401;
33  const double nwa_span_MHz = 400.0;
34  const double nwa_power_dBm = -15.0;
35 
36  std::shared_ptr<NetworkAnalyzer> hp8757_c = \
37  std::shared_ptr<NetworkAnalyzer>( new NetworkAnalyzer( network_analyzer.ip_addr,\
38  network_analyzer.port_addr,\
39  nwa_points,\
40  nwa_span_MHz,\
41  nwa_power_dBm ) );
42 
43  std::cout << "Turning on RF source" << std::endl;
44  hp8757_c->TurnOnRFSource();
45 
46  std::cout << "Turning off RF source." << std::endl;
47  hp8757_c->TurnOffRFSource();
48 
49  std::cout << "Turning RF source on again." << std::endl;
50  hp8757_c->TurnOnRFSource();
51 
52  std::cout << "Setting frequency window to 1950 - 2050 MHz" << std::endl;
53  hp8757_c->SetFrequencyWindow( 2000, 100 );
54 
55  std::cout << "Collecting single scan between 1950 - 2050 MHz" << std::endl;
56  auto single_scan = hp8757_c->TakeDataSingle();
57  jaspl::plot( single_scan );
58 
59  std::cout << "Collecting four scans ranging between 3000 - 4600 MHz" << std::endl;
60  auto multiple_scan = hp8757_c->TakeDataMultiple();
61  jaspl::plot( multiple_scan );
62 
63 }
64 
65 #endif // TEST_NETWORK_ANALYZER_H
Object to communicate with the HP8757 C Network Analyzer.
Definition: network_analyzer.h:19
Definition: configprocessor.h:38