/** * @file Property.h * @brief 定义Property类, 提供属性信息获取, 包括Project, Survey, Seis, VelModel,Grid, Job, * VelPair, Geometry 类型的属性 */ #ifndef PAI_FRAME_IOSERVICE_PROPERTY_H #define PAI_FRAME_IOSERVICE_PROPERTY_H #include "Turtle.h" #include #include #include "Const.h" namespace pai { namespace ios { namespace property { /** * @brief Common */ const std::string LAST_MODIFYED = "Last Modified By"; const std::string DISK_PATH = "Disk Path"; const std::string SIZE = "Data Size"; const std::string CREATE_BY = "Creator"; const std::string CREATE_TIME = "Created"; const std::string LAST_ACCESS_TIME = "Last Accessed"; const std::string MODIFY_TIME = "Modified"; const std::string INLINE_COUNT = "Inline Count"; const std::string MAX_INLINE = "Max Inline"; const std::string MIN_INLINE = "Min Inline"; const std::string XLINE_COUNT = "Crossline Count"; const std::string MAX_XLINE = "Max Crossline"; const std::string MIN_XLINE = "Min Crossline"; const std::string INLINE_INTERVEL = "Inline Intervel"; const std::string XLINE_INTERVEL = "Crossline Intervel"; const std::string CMP_COUNT = "CMP Count"; const std::string MAX_CMP = "Max CMP"; const std::string MIN_CMP = "Min CMP";//TODO:统计了最大采样值和最小采样值 const std::string PICK_GATHERS = "Pick Gathers"; const std::string PICK_TRACE = "Pick Traces"; const std::string DATA_NAME = "Data Name"; const std::string COMMENT = "Comment"; const std::string FILE_COUNT = "File Count";///<指定文件夹下该种类型数据的个数 /** * @brief type */ const std::string TYPE = "Type"; const std::string TYPE_PROJECT = "Project"; const std::string TYPE_SURVEY = "Survey"; const std::string TYPE_SEISMIC = "Data"; const std::string TYPE_GEOMETRY = "Geometry"; const std::string TYPE_GRID = "Grid"; const std::string TYPE_VELMODEL = "Vel-Model"; const std::string TYPE_VELANALYSIS = "Vel-Analysis"; const std::string TYPE_VELPAIR = "VelPair"; const std::string TYPE_FIRSTARRIVAL = "FirstArrival"; const std::string TYPE_MUTE = "Mute"; const std::string TYPE_TRACEEDIT = "TraceEdit"; const std::string TYPE_STATICS = "Statics"; const std::string TYPE_HORIZON = "Horizon"; const std::string TYPE_MODELING = "Modeling"; const std::string TYPE_ATTRIBUTE = "Attribute"; const std::string TYPE_OPERATION = "Operation"; const std::string TYPE_VELDATATYPE = "Vel Type"; const std::string TYPE_PARAMETERSETFOLDER = "Parameter Set"; const std::string TYPE_VELOCITYFOLDER = "Velocity"; const std::string TYPE_VELPAIRFOLDER = "Vel-Pairs"; const std::string TYPE_WORKFLOW = "Workflow"; const std::string TYPE_JOB = "Job"; const std::string TYPE_JOBLOG = "Log"; const std::string TYPE_GRIDPROPERTY = "Grid Property"; /** * @brief Seis */ const std::string DATA_TYPE = "Data Type"; const std::string INDEX_INFO = "Index Info"; const std::string GATHER_TYPE = "Gather Type"; const std::string GATHER_COUNT = "Gather Count"; const std::string TRACE_COUNT = "Trace Count"; const std::string MAX_SHOTNO = "Max Shot_num"; const std::string Min_SHOTNO = "Min Shot_num"; const std::string RECEIVER_COUNT = "Receiver Count";/// > & itemgroup); private: void GetProjectProperty (const long long id, std::vector > & itemgroup); void GetSurveyProperty (const long long id, std::vector > & itemgroup); void GetSeisProperty (const long long id, std::vector > & itemgroup); void GetGeometryProperty (const long long id, std::vector > & itemgroup); void GetGridProperty (const long long id, std::vector > & itemgroup); void GetVelModelProperty (const long long id, std::vector > & itemgroup); void GetVelPairProperty (const long long id, std::vector > & itemgroup); void GetFirstArrivalProperty(const long long id, std::vector > & itemgroup); void GetMuteProperty(const long long id, std::vector > & itemgroup); void GetTraceEditProperty(const long long id, std::vector > & itemgroup); void GetStaticsProperty(const long long id, std::vector > & itemgroup); void GetHorizonProperty (const long long id, std::vector > & itemgroup); void GetModelingProperty (const long long id, std::vector > & itemgroup); void GetOperationProperty (const long long id, std::vector > & itemgroup); void GetVelAnalysisProperty (const long long id, std::vector > & itemgroup); void GetLaterProperty(const long long id, std::vector > & itemgroup); void GetShotProperty(const long long id, std::vector > & itemgroup); void GetWorkflowProperty(const long long id, std::vector > & itemgroup); void GetJobProperty(const long long id, std::vector > & itemgroup); void GetJobLogProperty(const long long id, std::vector > & itemgroup); void GetGridPropertyProperty(const long long id, std::vector > & itemgroup); /** * @brief 获取文件夹属性 */ void GetWorkflowFolderProperty (const long long id, std::vector > & itemgroup); void GetSeisFolderProperty (const long long id, std::vector > & itemgroup); void GetJobFolderProperty (const long long id, std::vector > & itemgroup); void GetGridFolderProperty (const long long id, std::vector > & itemgroup); void GetGeometryFolderProperty (const long long id, std::vector > & itemgroup); void GetParamFolderProperty (const long long id, std::vector > & itemgroup); void GetFirstArrivalFolderProperty(const long long id, std::vector > & itemgroup); void GetMuteFolderProperty(const long long id, std::vector > & itemgroup); void GetTraceEditFolderProperty(const long long id, std::vector > & itemgroup); void GetStaticsFolderProperty(const long long id, std::vector > & itemgroup); void GetHorizonFolderProperty (const long long id, std::vector > & itemgroup); void GetVelocityFolderProperty (const long long id, std::vector > & itemgroup); void GetVelPairFolderProperty (const long long id, std::vector > & itemgroup); void GetVelModelFolderProperty (const long long id, std::vector > & itemgroup); void GetModelingFolderProperty (const long long id, std::vector > & itemgroup); void GetVelAnaFolderProperty (const long long id, std::vector > & itemgroup); void GetAttributeFolderProperty (const long long id, std::vector > & itemgroup); std::string GetSurveyTypeString(const SurveyType& type); void ChangeFileSizeUnit(long long size,std::string &realsize,pai::ios::property::ItemUnit & itemUnit,pai::ios::property::ItemUnit defaultUnit = Byte); }; } } } #endif