⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccsds_pro.h

📁 本源码是一个用于卫星数据处理的程序
💻 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 + -