📄 ccsds_pro.h
字号:
/***************************************************************************
文件名:ccsds.pro.h
copyright :1.0 中国科学院光电研究院有效载荷应用中心
创建人 : 冯鹏
日期:2007.1.20
修改人: 无
日期: 无
描述:定义处理科学数据时所需要的数据结构和函数原形
***************************************************************************/
#ifndef CCSDS_PRO_H_
#define CCSDS_PRO_H_
#include <stdio.h>
#include <vector>
#include <string>
#include <MATH.H>
#include "fits_data.h"
#include "hxmt_file.h"
#include "fits_eph.h"
#include "fits_asf.h"
typedef struct js_struct//校时
{
timespec_t utc;
double e;
} js_t;
typedef struct SCMD_struct//飞行模式
{
char mode; //模式
std::string id; //标识
timespec_t start;//开始时间
timespec_t end; //结束时间
} SCMD_t;
typedef struct CIR_struct//圈次
{
int cir; //圈次
timespec_t utc; //开始时间
timespec_t time2;//结束时间
std::string id; //卫星代号
} CIR_t;
struct sci_intern
{
std::vector<js_t> js_table;
std::vector<SCMD_t> scmd_table;
std::vector<CIR_t> cir_table;
std::vector<EPH_t> eph_table;
std::vector<ZT_t> zt_table;
};
// int process_ccsds( FILE *in, FILE* out );
int process_hx_sci( const hxmt_file_t *hxmtfile );
int process_sx_sci( const hxmt_file_t *hxmtfile );
int LoadCIR( const char *filename, struct sci_intern *s );
int LoadSCMD( const char *filename, struct sci_intern *s );
int LoadZT( const char *filename, struct sci_intern *s); //姿态数据文件中的数据装入容器
CIR_t * FindCIR( struct sci_intern *s, const timespec_t *time, const std::string& id );
SCMD_t * FindSCMD( struct sci_intern *s, const timespec_t *time );
const ZT_t * FindZT(struct sci_intern *s, const timespec_t *time);
int is_x_mode( timespec_t t );
int get_cir_num( timespec_t t );
std::string get_x_id( timespec_t t );
int get_fits_filename( const hxmt_file_t *hxmtfile, std::string &filename, std::string &ptname, int &mode, std::string &fitsfilename );
#endif /* CCSDS_PRO_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -