55 lines
1.7 KiB
C
55 lines
1.7 KiB
C
/*************************************************************************\
|
|
* Copyright (c) 2019 European Spallation Source ERIC
|
|
* ecmc is distributed subject to a Software License Agreement found
|
|
* in file LICENSE that is included with this distribution.
|
|
*
|
|
* ecmcFFTDefs.h
|
|
*
|
|
* Created on: Mar 22, 2020
|
|
* Author: anderssandstrom
|
|
* Credits to https://github.com/sgreg/dynamic-loading
|
|
*
|
|
\*************************************************************************/
|
|
|
|
#ifndef ECMC_FFT_DEFS_H_
|
|
#define ECMC_FFT_DEFS_H_
|
|
|
|
// Options
|
|
#define ECMC_PLUGIN_DBG_PRINT_OPTION_CMD "DBG_PRINT="
|
|
#define ECMC_PLUGIN_SOURCE_OPTION_CMD "SOURCE="
|
|
#define ECMC_PLUGIN_NFFT_OPTION_CMD "NFFT="
|
|
//#define ECMC_PLUGIN_APPLY_SCALE_OPTION_CMD "APPLY_SCALE="
|
|
#define ECMC_PLUGIN_RM_DC_OPTION_CMD "RM_DC="
|
|
#define ECMC_PLUGIN_ENABLE_OPTION_CMD "ENABLE="
|
|
#define ECMC_PLUGIN_RATE_OPTION_CMD "RATE="
|
|
#define ECMC_PLUGIN_RM_LIN_OPTION_CMD "RM_LIN="
|
|
#define ECMC_PLUGIN_SCALE_OPTION_CMD "SCALE="
|
|
#define ECMC_PLUGIN_BREAKTABLE_OPTION_CMD "BREAKTABLE="
|
|
|
|
// CONT, TRIGG
|
|
#define ECMC_PLUGIN_MODE_OPTION_CMD "MODE="
|
|
#define ECMC_PLUGIN_MODE_CONT_OPTION "CONT"
|
|
#define ECMC_PLUGIN_MODE_TRIGG_OPTION "TRIGG"
|
|
|
|
typedef enum FFT_MODE{
|
|
NO_MODE = 0,
|
|
CONT = 1,
|
|
TRIGG = 2,
|
|
} FFT_MODE;
|
|
|
|
typedef enum FFT_STATUS{
|
|
NO_STAT = 0,
|
|
IDLE = 1, // Doing nothing, waiting for trigg
|
|
ACQ = 2, // Acquireing data
|
|
CALC = 3, // Calc FFT
|
|
} FFT_STATUS;
|
|
|
|
/** Just one error code in "c" part of plugin
|
|
(error handled with exceptions i c++ part) */
|
|
#define ECMC_PLUGIN_FFT_ERROR_CODE 1
|
|
|
|
// Default size (must be n²)
|
|
#define ECMC_PLUGIN_DEFAULT_NFFT 4096
|
|
|
|
#endif /* ECMC_FFT_DEFS_H_ */
|