.

Average: 0
Rating Count: 0

Development status: New development
Information status: Updated
Repository: http://svn.code.sf.net/p/tango-ds/code/DeviceClasses/Acquisition/2D/ScientaAcquisition
Contact:



Class Description


Families: Acquisition

Key words: 2D

Platform: Windows

Language: Cpp

License:

Contact:

Hardware


Manufacturer: Scienta

Product:

Scienta

Bus: Not Applicable

Class interface


Attributes:

Name Description
excitationEnergyScalar: DevDouble
modeScalar: DevString
highEnergyScalar: DevDouble
lowEnergyScalar: DevDouble
fixEnergyScalar: DevDouble
energyStepScalar: DevDouble
stepTimeScalar: DevDouble
lensModeScalar: DevString
passEnergyScalar: DevDouble
passModeScalar: DevString
detectorFirstXChannelScalar: DevShort
detectorLastXChannelScalar: DevShort
detectorFirstYChannelScalar: DevShort
detectorLastYChannelScalar: DevShort
detectorSlicesScalar: DevShort
ADCModeScalar: DevShort
ADCMaskScalar: DevShort
discriminatorLevelScalar: DevShort
channelsScalar: DevLong
slicesScalar: DevLong
sweepsScalar: DevLong
spinFixed1Scalar: DevDouble
spinFixed2Scalar: DevDouble
spinFixed3Scalar: DevDouble
spinFixed4Scalar: DevDouble
areaScalar: DevDouble
loadParametersAtStartScalar: DevBoolean
channelScaleSpectrum: DevDouble
sliceScaleSpectrum: DevDouble
sumDataSpectrum: DevDouble
spinSwept1Spectrum: DevDouble
spinSwept2Spectrum: DevDouble
spinSwept3Spectrum: DevDouble
spinSwept4Spectrum: DevDouble
dataImage: DevDouble

Commands:

Name Description
StateInput: DevVoid
Output: State
This command gets the device state (stored in its device_state data member) and returns it to the caller.
StatusInput: DevVoid
Output: DevString
This command gets the device status (stored in its device_status data member) and returns it to the caller.
StartInput: DevVoid
Output: DevVoid
Start the acqusition for one region with parameters configured in the attributes.
StopInput: DevVoid
Output: DevVoid
Stop the current acquisition.
ResetInstrumentInput: DevVoid
Output: DevVoid
Reset instrument.
ResetSuppliesInput: DevVoid
Output: DevVoid
Reset supplies.
TestCommunicationInput: DevVoid
Output: DevVoid
Test communication with hardware.
GetHardwareInfoInput: DevVoid
Output: DevString
Retrieve hardware informations.
GetLensModeListInput: DevVoid
Output: DevVarStringArray
None.
GetPassEnergyListInput: DevVoid
Output: DevVarDoubleArray
None.
GetPassModeListInput: DevVoid
Output: DevVarStringArray
None.
CalibrateInput: DevVoid
Output: DevVoid
Enter calibration mode (perform acquisition in an endless loop)
LoadParametersInput: DevVoid
Output: DevVoid
Send acquisition parameters to the detector

Pipes:

Properties:

Name Description
SesRootDirectoryDevString The ses root directory (where ses.exe is installed)
InstrumentFilePathDevString The name of the instrument file (eg:D:\\dev\\SES-1.2.5-rc6\\data\\Instrument.dat)
UseSpinDevBoolean if use or not spin


Please log in to comment.

Generated

PDF generated from POGO



README

b'SESWrapper 2.6.6\n----------------\n\nChanges since version 2.6.5:\n\n Fixed bugs related to setting always_delay_region and allow_io_with_detector.\n\n\nChanges since version 2.6.4:\n\n Fixed bug in WSESWrapperMain::getAcqImage()\n\n\nChanges since version 2.6.3:\n\n Fixed bugs that could cause the host process to crash when accessing measured data.\n\n\nChanges since version 2.6.2:\n\n Fixed bug in WSESWrapperMain::instance().\n\n Added function WSESWrapperMain::references().\n\n\nChanges since version 2.6.1:\n\n The global detector settings are now read as default settings for the detector region.\n\n Added C function WRP_GetAnalyzerRegion.\n\n No longer returns false if SESInstrument.dll is already loaded when load() is called.\n\n When calling WSESWrapperMain::setProperty(), the "reserved" argument should now contain the size (in bytes) of the value of the property being set.\n The corresponding WRP_SetPropertyBool(), WRP_SetPropertyInteger(), WRP_SetPropertyDouble() and WRP_SetPropertyString() automatically sets that argument\n to the appropriate values.\n\n The WSESWrapperMain class is now a singleton with access functions instance() and release(). The number of calls to release() must match the number of\n calls to instance() for the object to be correctly destroyed. For the DLL this should not be a problem since instance() and release() are both\n called by the global DllMain() function at the appropriate occations.\n\n\nChanges since version 2.6.0:\n\n Fixed a bug that prevented SESWrapper from functioning properly when loading the SESInstrument DLL.\n\n\nChanges since version 2.5.1:\n\n GDS_LoadRunVar and GDS_SaveRunVar have been removed from WSESInstrument. They were never exposed by the SESWrapper API so this change will not affect client applications.\n\n SC_SetProperty and SC_GetProperty have been added to WSESInstrument. If a property is not recognized when calling WSESWrapperMain::setProperty or WSESWrapperMain::getProperty,\n SESWrapper will call the corresponding SESInstrument functions. This enables us to access more of the internal properties available in SESInstrument. For example, if the user wants\n to enable/disable straight slit compensation, the \'slit_compensation\' property can be set. It is a boolean property residing in SESInstrument.dll.\n \n A new property has been added: instrument_library. This property allows the calling application to switch between different instrument libraries (provided they are compatible with\n the SESInstrument.dll API). For example, a suggested function sequence could be\n\n WRP_SetPropertyString("lib_working_dir", "C:\\SES_1.3.1");\n WRP_SetPropertyString("instrument_library", "dll\\MySESInstrument.dll");\n WRP_Initialize(0);\n\n which would attach SESWrapper to MySESInstrument.dll instead of the normal SESInstrument.dll. The default setting for this property is "dll\SESInstrument.dll".\n\n SESWrapper no longer opens the SESInstrument.dll library when it is first loaded. This is only done through a call to WRP_Initialize(0) (or SESWRapperMain::initialize(0)). The reason for this\n is that the calling application has to be given the chance to set the instrument_library property before the correct library is loaded.\n\n The default value of acq_current_point is now -2147483648 (lowest value of 32-bit integer numbers) instead of the previous -999999 value.\n\n SESWrapper no longer checks the validity of the detector region when calling WRP_SetDetectorRegion() which means that the function no longer returns an error if the specified\n detector region is invalid. The reason for this is that there are a number of other settings that need to be set before a proper check can be made. The following function\n sequence shows a more appropriate way to accomplish this (the example assumes binding energies):\n\n bool useBindigEnergy = true;\n double excitationEnergy;\n char lensMode[32];\n double passEnergy;\n SESWrapperNS::WAnalyzerRegion region;\n SESWrapperNS::WDetectorRegion detector;\n \n // Initialize the variables here.\n \n WRP_SetPropertyBool("use_binding_energy", &useBindingEnergy);\n WRP_SetPropertyString("lens_mode", lensMode);\n WRP_SetPropertyDouble("pass_energy", &passEnergy);\n WRP_SetExcitationEnergy(excitationEnergy);\n WRP_SetAnalyzerRegion(&region);\n WRP_SetDetectorRegion(&detector);\n\n // Now we can verify the new region:\n SESWrapperNS::WAnalyzerRegion testRegion;\n int steps;\n double time_ms;\n double energyStep;\n int result = WRP_CheckAnalyzerRegion(&testRegion, int steps, double time_ms, double energyStep);\n if (result != 0)\n {\n SESWrapperNS::WDetectorRegion testDetector;\n WRP_GetDetectorRegion(&testDetector);\n }\n\n\nChanges since version 2.5.0:\n\n Fixed a bug that reset the use_binding_energy property whenever the analyzer region was set. The same bug also set the\n excitation energy to 0.\n\n\nChanges since version 2.4.3:\n\n Added functions WRP_SetExcitationEnergy() and WRP_GetExcitationEnergy(), WRP_SetBindingEnergy() and WRP_GetBindingEnergy().\n\n Added property use_binding_energy. If set to true, the energies specified in the analyzer region struct are treated as binding energies.\n To use binding energies, you also need to set the excitation energy.\n \n Added properties element_name_count and element_name, which can be used to obtain a list of available voltage element names.\n\n\nChanges since version 2.4.2:\n\n Updated the LabVIEW example VIs.\n\n\nChanges since version 2.4.1:\n\n Added read-only variables acq_current_point, acq_point_intensity and acq_channel_intensity to obtain a single\n point from the acquired spectrum. This is useful during swept mode acquisitions to avoid unnecessary copying\n of data. The acq_current_point variable obtains the point index of the latest step taken and can then be used to\n request the corresponding intensity from the accumulated spectrum. This replaces the acq_current_step\n variable. acq_current_step still exists for backward compatibility.\n \n C Example:\n \n ...\n int point;\n int slices;\n WRP_WaitForPointReady(-1); // This is required to get a reliable value of p.\n // Note that p is negative until the first channel has been completed\n WRP_GetAcquiredDataInteger("acq_current_point", 0, &point, 0);\n WRP_GetAcquiredDataInteger("acq_slices", 0, &slices, 0);\n double intensity = 0;\n double channel = new double[slices];\n if (point >= 0)\n {\n WRP_GetAcquiredDataDouble("acq_point_intensity", point, &intensity, 0);\n WRP_GetAcquiredDataVectorDouble("acq_channel_intensity", point, channel, 0);\n }\n\n\nChanges since version 2.4.0:\n\n Corrected a race condition between pointReady() and waitForPointReady().\n\n\nChanges since version 2.3.2:\n\n A problem in SESInstrument has required the GDS_StartAcquisition() to be disabled and replaced by a call to the\n GDS_Start() function. This will be corrected in a future release.\n\n A new property has been introduced to allow SES support of spin detectors. The property (called \'use_spin\')\n is a boolean value.\n\n Fixed a bug that caused SESWrapper to crash when calling the getters for "element_set" or "lens_mode" with string\n address 0.\n\nChanges since version 2.3.1:\n\n The previous release did not ship with the correct SESWrapper DLL version. This has now been addressed.\n\n Added a Library Information box in the Sweep VI example to indicate the current version of SESWrapper DLL. This was done for\nthe obvious reason shown above.\n\nChanges since version 2.2.1:\n\n Removed properties element_set_from_index, lend_mode_from_index and pass_energy_from_index. The element_set, lend_mode\n and pass_energy properties now make use of the index parameter. If index is -1, the current element_set, lens_mode\n or pass_energy is read/modified. If index is between 0 and element_set_count, lens_mode_count or pass_energy_count, the\n name or value for that index is read. For example, if you want to set the lens mode to Transmission, you could call\n \n WRP_SetProperty("lens_mode", -1, "Transmission");\n\n or, to find out which lens modes are available, this example shows how it can be done in C/C++:\n\n int count = 0;\n int size = 0;\n WRP_GetProperty("lens_mode_count", 0, &count, &size);\n for (int i = 0; i < count; i++)\n {\n char buffer[256];\n size = 256;\n WRP_GetProperty("lens_mode", i, buffer, &size);\n std::cout << buffer << std::endl;\n }\n WRP_GetProperty("lens_mode", -1, buffer, &size);\n std::cout << "Current lens mode: " << buffer << std::endl;\n\n Added function validate() (exported as WRP_Validate), which should be used to validate the combination of the given\n element set, lens mode and pass energy. The function also includes a kinetic energy argument, which is currently ignored.\n Use this function to check whether a certain pass energy is available for a given lens mode.\n\n Modified the LabVIEW Sweep.vi example to make use of the new index syntax for element sets, lens modes\n and pass energies (described above).\n\n\nChanges since version 2.1.1:\n\n Updated the documentation by adding a page ("Coding Examples") that gives an example of how to create a C/C++\n application that converts SESWrapper.dll into an executable.\n\n Added two functions for setting/retrieving properties with the void argument type. These functions are not\n included in the LabVIEW parts of the package.\n\n Updated the appearance of the Sweep VI and related VIs.\n\n\nChanges since version 2.1.0:\n\n A new property has been added: reset_data_between_iterations. If this is set to 1, the data is automatically\n cleared between each call to WRP_StartAcquisition. This minimizes the need to call WRP_InitAcquisition to set\n up a new acquisition.\n\n The energy scale shown in the image in the Sweep.vi example has been removed. The scale was erroneously showing\n Kinetic energy, but that information could not be imported to that sub-VI.\n\nChanges since version 2.0.1:\n\n SESWrapper now tries to load and initialize the SESInstrument library automatically on startup. On\n exit, the library then also makes finalization automatically. This removes the need to call WRP_Initialize\n and WRP_Finalize, and allows the owning application to select any working directory during execution.\n This requires SESWrapper.dll to be in the same directory as SESInstrument.dll, and the libraries must also\n be in the dll\ directory of the SES software.\n\n The Sweep.vi example has been modified according to the above change to the library.\n\n A bug has been corrected that made it impossible to set the temp_file_name property. This property has no\n direct impact on the general operation of the library, but can be used to gain access to the temporary file\n generated during acquisitions.\n \n Each time an error occurs in the SESInstrument library, an error string is logged in the seswrapper.log file.\n This has now been improved by also adding the date and time of the error. The file is never cleared, and can be\n used for trouble reporting. Normal operation does not generate any text in the file, and if it is deleted, a new\n file is created when necessary. The file is normally saved in the current working directory.\n\nChanges since version 1.0.2:\n\n SESWrapper now requires version 1.2.5 of the SES software. A number of problems have been corrected\n which has required the removal of legacy support (SES 1.2.2).\n\n The WRP_LoadConfig() and WRP_SaveConfig() functions were never used and have been removed.\n\n The properties and data parameters have been completely redesigned to improve performance\n and the readability of the source code. Internally they now use individual callbacks ("setters"\n and "getters"). This in turn has resulted in a major overhaul of the SESWrapper Developer\'s\n Guide.\n\n The index parameter found in the WRP_SetProperty were sometimes used inconsitently. This\n parameter has now been renamed to "reserved" and should not be used in the current version of\n SESWrapper WRP_SetProperty... functions. Properties "element_set_from_index", "lens_mode_from_index"\n and "pass_energy_from_index" now correctly uses the "value" parameter to set the corresponding\n value. The value in this case would be an index from the available values in the element set,\n lens mode or pass energy lists. To set an element set, lens mode or pass energy directly by its\n name/value (e.g. "Transmission" for the lens mode), use the "lens_mode" property instead,\n with the WRP_SetPropertyString function.\n\n A number of small bugs have been fixed, including a problem with the WRP_CheckAnalyzerRegion function\n which resulted in the loss of correct lens mode and pass energy at certain points of execution.\n\n The Sweep.vi example VI has been redesigned to improve performance and usability. However, it is\n important to remember that this is only an example, and should not be assumed to be a complete\n application.\n\n A new property has been added: "temp_file_name". This property is set through the WRP_SetPropertyString\n function, and should contain the name of the temporary file used during acquisition of one spectrum. It is possible to use this string (which can contain an absolute path) later on to convert the temporary file to e.g. an Igor file by using one of our file interface DLLs.\n\n A new property has been added: "region_name". This property is optional and will not affect much of the\n operation of SESWrapper, but adds to the internal structure used to communicate with the SESInstrument library.\n'

22 Feb 2018, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



22 Feb 2018, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



16 Feb 2018, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



20 Apr 2017, Piotr Goryl
Updated:
The device class has been updated.
You can see previous version here .



23 Feb 2017, Piotr Goryl
Created:
The device class has been added to catalogue.
Added by:pgoryl2 on:23 Feb 2017, 9:19 a.m.