您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CMargShiftLeft函数代码示例

51自学网 2021-06-01 20:03:11
  C++
这篇教程C++ CMargShiftLeft函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CMargShiftLeft函数的典型用法代码示例。如果您正苦于以下问题:C++ CMargShiftLeft函数的具体用法?C++ CMargShiftLeft怎么用?C++ CMargShiftLeft使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CMargShiftLeft函数的23个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: MFOptionParse

int MFOptionParse (int argc, char *argv []) {	int argNum = argc, argPos, i;	int MFLoadConfig (const char *,int (*) (const char *, const char *));	for (argPos = 1;argPos < argNum;) {		if (CMargTest (argv [argPos],"-p","--option")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing option argument!/n");				return (CMfailed);			}			for (i = 0;i < (int) strlen (argv[argPos]);++i) if (argv [argPos][i] == '=') break;			if (i == (int) strlen (argv [argPos])) {				CMmsgPrint (CMmsgAppError,"Illformed option [%s]!/n",argv [argPos]);				return (CMfailed);			}			argv [argPos][i] = '/0';			_MFOptionNew (argv [argPos],argv [argPos] + i + 1);			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest (argv [argPos],"-pl","--option-listfile")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing option argument!/n");				return (CMfailed);			}			MFLoadConfig (argv [argPos],_MFOptionNew);			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		argPos++;	}	return (argNum);}
开发者ID:rjs80,项目名称:RGIS,代码行数:33,


示例2: main

int main (int argc, char *argv []){   int argPos, argNum = argc, ret = CMfailed, port=CMfailed, socket=CMfailed;      for (argPos = 1;argPos < argNum;) {		if (CMargTest(argv[argPos],"-p","--port")) {			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			if (port != CMfailed) CMmsgPrint (CMmsgUsrError,"Skipping port redefinition!");			else {			}			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-s","--socket")) {			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			if (socket != CMfailed) CMmsgPrint (CMmsgUsrError,"Skipping socket redefinition!");			else {			}			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}Help:	if (CMargTest(argv[argPos],"-h","--help")) {			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) < argPos) break;			CMmsgPrint (CMmsgUsrError,"%s [options]",CMprgName(argv[0]));			CMmsgPrint (CMmsgUsrError,"  -p, --port");			CMmsgPrint (CMmsgUsrError,"  -s, --socket");			CMmsgPrint (CMmsgUsrError,"  -h,--help");			ret = CMsucceeded;			goto Stop;		}		if ((argv [argPos][0] == '-') && (strlen (argv [argPos]) > 1)) {			CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]);			goto Stop;		}      argPos++;	}	if (argNum > 1) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }   {      DBObjData *data;   }      ret = CMsucceeded;   Stop:	return (ret);}
开发者ID:amiara,项目名称:RGIS,代码行数:47,


示例3: main

int main(int argc, char* argv[]){	int argPos = 0, argNum = argc, ncid;	char *fname = (char *) NULL, *tname = "time";	FILE *output = stdout;	NCtable_t *tbl = (NCtable_t *) NULL;	initMemInfo();	for(argPos = 1; argPos < argNum;) {		if (CMargTest(argv[argPos],"-d","--debug"))                    {                    SetDebug();                    CMargShiftLeft(argPos,argv,argc);                    argNum--;                    continue;                    }		if (CMargTest(argv[argPos],"-h","--help")) {			if((argPos + 1 < argNum) && (argv[argPos+1][0] == 'e')) doHelp (CMprgName(argv[0]),true);			else doHelp (CMprgName (argv[0]),false);			cleanup(NCsucceeded);		}		if (CMargTest(argv[argPos],"-t","--table"))		{			CMargShiftLeft(argPos,argv,argc); argNum--;			tname = argv[argPos];			CMargShiftLeft(argPos,argv,argc); argNum--;			continue;		}		if (CMargTest(argv[argPos],"-f","--file"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError,"Missing file!");  return (CMfailed); }			fname = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-o","--output"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError,"Missing output!");  return (CMfailed); }			if(output != stdout) { CMmsgPrint (CMmsgUsrError, "Output file defined twice!"); cleanup(NCfailed); }			if((output = fopen(argv[argPos],"w")) == (FILE *) NULL)				{ CMmsgPrint (CMmsgUsrError, "Cannot open for writing: %s",argv[argPos]); cleanup(NCfailed); }			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if ((argv[argPos][0] == '-') && (strlen (argv[argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError, "Unknown option: %s!",argv[argPos]); cleanup(NCfailed); }		argPos++;	}	if(fname == (char *) NULL) { doHelp(argv[0],false); CMmsgPrint (CMmsgUsrError, "No file specified!"); cleanup(NCfailed); }	if(nc_open(fname,NC_NOWRITE,&ncid) != NC_NOERR) { CMmsgPrint (CMmsgUsrError, "Error opening file!"); cleanup(NCfailed); }	if((tbl = NCtableOpen(ncid,tname)) == (NCtable_t *) NULL) { CMmsgPrint (CMmsgUsrError, "Error opening table!"); cleanup(NCfailed); }	if(GetDebug()) CMmsgPrint (CMmsgUsrError, "Loaded file!");	NCtableExportAscii(tbl,output);	cleanup(NCsucceeded);}
开发者ID:amiara,项目名称:RGIS,代码行数:57,


示例4: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	char *title  = (char *) NULL, *subject = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	DBInt stepNum = 0, offset = 0, doSum = false;	DBObjData *tsData, *data;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-a","--aggregate"))			{			int sumCodes  [] = { false, true	};			const char *sumStrs [] = { "avg", "sum", (char *) NULL };			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing aggregation method!"); return (CMfailed); }			if ((doSum = CMoptLookup (sumStrs,argv [argPos],true)) == DBFault)				{ CMmsgPrint (CMmsgUsrError,"Invalid aggregation method!"); return (CMfailed); }			doSum = sumCodes [doSum];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-o","--offset"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing offset!");       return (CMfailed); }			if (sscanf (argv [argPos],"%d",&offset) != 1)				{ CMmsgPrint (CMmsgUsrError,"Invalid number of steps!");	return (CMfailed); }			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-e","--step"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing number of steps!"); return (CMfailed); }			if (sscanf (argv [argPos],"%d",&stepNum) != 1)				{ CMmsgPrint (CMmsgUsrError,"Invalid number of steps!"); return (CMfailed); }			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");        return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-u","--subject"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing subject!");      return (CMfailed); }			subject = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");       return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");      return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgSysError,"%s [options] <input grid> <output grid>",CMprgName(argv[0]));			CMmsgPrint (CMmsgSysError,"     -a,--aggregate [avg|sum]");			CMmsgPrint (CMmsgSysError,"     -o,--offset    [offset]");			CMmsgPrint (CMmsgSysError,"     -e,--step      [number of steps]");			CMmsgPrint (CMmsgSysError,"     -t,--title     [dataset title]");			CMmsgPrint (CMmsgSysError,"     -u,--subject   [subject]");			CMmsgPrint (CMmsgSysError,"     -d,--domain    [domain]");			CMmsgPrint (CMmsgSysError,"     -v,--version   [version]");			CMmsgPrint (CMmsgSysError,"     -V,--verbose");			CMmsgPrint (CMmsgSysError,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && (strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }//.........这里部分代码省略.........
开发者ID:amiara,项目名称:RGIS,代码行数:101,


示例5: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	bool downhill = true;	char *title  = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	DBObjData *outData, *inData, *basinData = (DBObjData *) NULL;	DBInt DBGridCont2Network (DBObjData *,DBObjData *, bool);	for (argPos = 1;argPos < argNum; )		{		if (CMargTest(argv[argPos],"-b","--basin_pack")) {			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError, "Missing basin pack filename!"); return (CMfailed); }			else {				if (basinData != (DBObjData *) NULL)					CMmsgPrint (CMmsgWarning,"Ignoring redefined basin pack");				else {					basinData = new DBObjData ();					if (basinData->Read (argv [argPos]) == DBFault) {						CMmsgPrint (CMmsgUsrError, "Basin data reading error");						delete basinData;						basinData = (DBObjData *) NULL;						return (CMfailed);					}				}			}			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-g","--gradient")) {			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError, "Missing gradient method!"); return (CMfailed); }			else {				const char *options [] = { "down", "up", (char *) NULL };				bool methods [] = { true, false };				DBInt code;				if ((code = CMoptLookup (options,argv [argPos],false)) == CMfailed) {					CMmsgPrint (CMmsgWarning,"Ignoring illformed gradient method [%s]!",argv [argPos]);				}				else downhill = methods [code];			}			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");        return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");            return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");      return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input file> <output file>",CMprgName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -b,--basin_pack [basin pack file]");			CMmsgPrint (CMmsgInfo,"     -g,--gradient   [down|up]");			CMmsgPrint (CMmsgInfo,"     -t,--title      [dataset title]");			CMmsgPrint (CMmsgInfo,"     -d,--domain     [domain]");			CMmsgPrint (CMmsgInfo,"     -v,--version    [version]");			CMmsgPrint (CMmsgInfo,"     -V,--verbose");			CMmsgPrint (CMmsgInfo,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && ((int) strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }	if (verbose) RGlibPauseOpen (argv[0]);	inData = new DBObjData ();	ret = (argNum > 1) && (strcmp (argv [1],"-") != 0) ? inData->Read (argv [1]) : inData->Read (stdin);//.........这里部分代码省略.........
开发者ID:amiara,项目名称:RGIS,代码行数:101,


示例6: main

int main(int argc, char* argv[])	{	int argPos, argNum = argc, ret, verbose = false;	int layerID, kernel = 3, offset = 0, i, layerNum, beginLayerID, endLayerID, num;	DBPosition pos;	char *title  = (char *) NULL, *subject = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	int shadeSet = DBDataFlagDispModeContGreyScale;	DBFloat value, sum;	DBObjData *inData,   *outData;	DBGridIF  *inGridIF, *outGridIF;	DBObjRecord *inLayerRec, *outLayerRec;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-k","--kernelsize"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing kernel size!"); return (CMfailed); }			if (sscanf (argv[argPos],"%d",&kernel) != 1)				{				CMmsgPrint (CMmsgUsrError,"Invalid kernel size!");				return (CMfailed);				}			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-f","--kerneloffset"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing kernel offset!"); return (CMfailed); }			if (sscanf (argv[argPos],"%d",&offset) != 1)				{				CMmsgPrint (CMmsgUsrError,"Invalid kernel offset!");				return (CMfailed);				}			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");        return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-u","--subject"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing subject!");      return (CMfailed); }			subject = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");            return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");      return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-s","--shadeset"))			{			int shadeCodes [] = {	DBDataFlagDispModeContStandard,			                        DBDataFlagDispModeContGreyScale,			                        DBDataFlagDispModeContBlueScale,			                        DBDataFlagDispModeContBlueRed,			                        DBDataFlagDispModeContElevation };			const char *shadeSets [] = { "standard","grey","blue","blue-to-red","elevation", (char *) NULL };			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing shadeset!");     return (CMfailed); }			if ((shadeSet = CMoptLookup (shadeSets,argv [argPos],true)) == CMfailed)				{ CMmsgPrint (CMmsgUsrError,"Invalid shadeset!");     return (CMfailed); }			shadeSet = shadeCodes [shadeSet];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input grid> <output grid>",CMfileName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -k,--kernelsize");			CMmsgPrint (CMmsgInfo,"     -f,--kerneloffset");//.........这里部分代码省略.........
开发者ID:bandi13,项目名称:RGIS,代码行数:101,


示例7: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	char *title  = (char *) NULL, *subject = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	char *networkName = (char *) NULL;	DBObjData *data, *netData, *grdData;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-n","--network"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing network!");       return (CMfailed); }			networkName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");         return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-u","--subject"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing subject!");       return (CMfailed); }			subject = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");        return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");       return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input grid> <output grid>",CMfileName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -n,--network   [network]");			CMmsgPrint (CMmsgInfo,"     -t,--title     [dataset title]");			CMmsgPrint (CMmsgInfo,"     -u,--subject   [subject]");			CMmsgPrint (CMmsgInfo,"     -d,--domain    [domain]");			CMmsgPrint (CMmsgInfo,"     -v,--version   [version]");			CMmsgPrint (CMmsgInfo,"     -V,--verbose");			CMmsgPrint (CMmsgInfo,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && (strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }	if (verbose) RGlibPauseOpen (argv[0]);	if (networkName == (char *) NULL)		{ CMmsgPrint (CMmsgUsrError,"Network is not specified"); return (CMfailed); }	netData = new DBObjData ();	if ((netData->Read (networkName) == DBFault) || (netData->Type () != DBTypeNetwork))		{ delete netData; return (CMfailed); }	grdData = new DBObjData ();	ret = (argNum > 1) && (strcmp (argv [1],"-") != 0) ? grdData->Read (argv [1]) : grdData->Read (stdin);	if ((ret == DBFault) || (grdData->Type () != DBTypeGridContinuous))		{ delete netData; delete grdData; return (CMfailed); }	if (title	== (char *) NULL)   title = (char *) "Basin Histogram";	if (subject == (char *) NULL) subject = grdData->Document (DBDocSubject);	if (domain	== (char *) NULL)  domain = netData->Document (DBDocGeoDomain);	if (version == (char *) NULL) version = (char *) "0.01pre";	data = new DBObjData (title,DBTypeTable);	data->Document (DBDocSubject,subject);	data->Document (DBDocGeoDomain,domain);	data->Document (DBDocVersion,version);	if ((ret = RGlibNetworkHistogram (netData,grdData,data)) == DBSuccess)//.........这里部分代码省略.........
开发者ID:rjs80,项目名称:RGIS,代码行数:101,


示例8: main

int main (int argc,char *argv []){	int argPos, argNum = argc, ncid, varid;	double range[2];	char *title = NULL, *type = NULL, *domain = NULL, *subject = NULL, *ref = NULL, *inst = NULL, *source = NULL, *comments = NULL;	VarNode_t *head, *last;	if((last = head = malloc(sizeof(VarNode_t))) == (VarNode_t *) NULL)		{ CMmsgPrint (CMmsgAppError, "Memory allocation error in: %s %d",__FILE__,__LINE__); return(NCfailed); }	for (argPos = 1;argPos < argNum;)	{		if (CMargTest(argv[argPos],"-h","--help"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            {                            doHelp(CMfileName(argv[0]),0);                            break;                            }                        else                            doHelp(CMfileName(argv[0]),(strcmp(argv[argPos],"extend") == 0) ||                                                      (strcmp(argv[argPos],"e")      == 0));			continue;		}		if (CMargTest(argv[argPos],"-l","--longname"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing variable Name!"); return (CMfailed); }			last->text = true;			last->var = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing Long Name!"); return (CMfailed); }			last->dat = argv[argPos];			last->attrib = NCnameVALongName;			if((last = last->next = malloc(sizeof(VarNode_t))) == NULL)				{ CMmsgPrint (CMmsgSysError, "Memory allocation error in: %s %d",__FILE__,__LINE__); return(NCfailed); }			last->dat = last->dat2 = (char *) NULL;			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-n","--standardname"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing variable Name!"); return (CMfailed); }			last->text = true;			last->var = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing Standard Name!"); return (CMfailed); }			last->dat = argv[argPos];			last->attrib = NCnameVAStandardName;			if((last = last->next = malloc(sizeof(VarNode_t))) == NULL)                            { CMmsgPrint (CMmsgSysError, "Memory allocation error in: %s %d"); return(CMfailed); }			last->dat = last->dat2 = (char *) NULL;			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-U","--units"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing variable!"); return (CMfailed); }			last->text = true;			last->var = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing Units!"); return (CMfailed); }			last->dat = argv[argPos];			last->attrib = NCnameVAUnits;			if((last = last->next = malloc(sizeof(VarNode_t))) == NULL)				{ CMmsgPrint (CMmsgSysError, "Memory allocation error in: %s %d",__FILE__,__LINE__); return(NCfailed); }			last->dat = last->dat2 = (char *) NULL;			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-v","--validrange"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing variable!"); return (CMfailed); }// ********************        CHECK HERE!!! ************************			last->text = false;			last->var = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)				{ CMmsgPrint (CMmsgUsrError, "Missing upper range!"); return (CMfailed); }			last->dat = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)				{ CMmsgPrint (CMmsgUsrError, "Missing lower range!"); return (CMfailed); }			last->dat2 = argv[argPos];			last->attrib = NCnameVAValidRange;			if((last = last->next = malloc(sizeof(VarNode_t))) == NULL)				{ CMmsgPrint (CMmsgSysError, "Memory allocation error in: %s %d",__FILE__,__LINE__); return(NCfailed); }			last->dat = last->dat2 = (char *) NULL;			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos) break;			continue;		}		if (CMargTest(argv[argPos],"-o","--offset"))		{			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing variable!"); return (CMfailed); }			last->text = false;			last->var = argv[argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argc)) <= argPos)                            { CMmsgPrint (CMmsgUsrError, "Missing offset!"); return (CMfailed); }			last->dat = argv[argPos];			last->attrib = NCnameVAAddOffset;//.........这里部分代码省略.........
开发者ID:rjs80,项目名称:RGIS,代码行数:101,


示例9: _MFModelParse

static int _MFModelParse (int argc, char *argv [],int argNum, int (*conf) ()) {	FILE *inFile;	bool testOnly = false;	int argPos, ret, help = false;	int i, varID, intVal;	float floatVal;	char *startDate = (char *) NULL, *endDate = (char *) NULL;	MFVariable_t *var;	int MFLoadConfig (const char *,int (*) (const char *, const char *, bool));	bool _MFOptionNew (char *,char *), _MFOptionTestInUse ();	for (argPos = 1;argPos < argNum;) {		if (CMargTest (argv [argPos],"-i","--input")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing input argument!/n");				return (CMfailed);			}			for (i = 0;i < (int) strlen (argv[argPos]);++i) if (argv [argPos][i] == '=') break;			if (i == (int) strlen (argv [argPos])) {				CMmsgPrint  (CMmsgUsrError,"Illformed input variable [%s] in: %s:%d/n",argv [argPos],__FILE__,__LINE__);				return (CMfailed);			}			argv [argPos][i] = '/0';			if (MFVarSetPath (argv [argPos],argv [argPos] + i + 1, false, MFInput) == (MFVariable_t *) NULL)  return (CMfailed);			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest (argv [argPos],"-o","--output")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing _MFModelOutput argument!/n");				return (CMfailed);			}			for (i = 0;i < (int) strlen (argv[argPos]);++i) if (argv [argPos][i] == '=') break;			if (i == (int) strlen (argv [argPos])) {				CMmsgPrint (CMmsgUsrError,"Illformed _MFModelOutput variable [%s]!/n",argv [argPos]);				return (CMfailed);			}			argv [argPos][i] = '/0';			if (_MFModelOutputNew (argv [argPos],argv [argPos] + i + 1,false) == CMfailed) return (CMfailed);			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;	 	}		if (CMargTest (argv [argPos],"-t","--state")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing _MFModelOutput argument!/n");				return (CMfailed);			}			for (i = 0;i < (int) strlen (argv[argPos]);++i) if (argv [argPos][i] == '=') break;			if (i == (int) strlen (argv [argPos])) {				CMmsgPrint (CMmsgUsrError,"Illformed _MFModelOutput variable [%s]!/n",argv [argPos]);				return (CMfailed);			}			argv [argPos][i] = '/0';			if (_MFModelOutputNew (argv [argPos],argv [argPos] + i + 1, true) == CMfailed) return (CMfailed);			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;	 	}		if (CMargTest (argv [argPos],"-s","--start")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing start time!/n");				return (CMfailed);			}			startDate = argv [argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest (argv [argPos],"-n","--end")) {			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing end time!/n");				return (CMfailed);			}			endDate = argv [argPos];			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;			continue;		}		if (CMargTest (argv [argPos],"-T","--testonly")) {			testOnly = true;			if ((argNum = CMargShiftLeft(argPos,argv,argNum)) <= argPos) break;		}		if (CMargTest (argv [argPos],"-m","--message")) {			const char *types [] = { "sys_error", "app_error", "usr_error", "debug", "warning", "info", (char *) NULL };			CMmsgType msgTypes [] = { CMmsgSysError, CMmsgAppError, CMmsgUsrError, CMmsgDebug, CMmsgWarning, CMmsgInfo };			int type;			const char *modes [] = { "file:", "on", "off", (char *) NULL };			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) < 1) {				CMmsgPrint (CMmsgUsrError,"Missing message argument!/n");				return (CMfailed);			}			if ((type = CMoptLookup (types,argv [argPos],false)) == CMfailed) {				CMmsgPrint (CMmsgWarning,"Ignoring illformed message [%s]!/n",argv [argPos]);			}			else {				switch (CMoptLookup (modes, argv [argPos] + strlen (types [type]) + 1, false)) {					case 0: CMmsgSetStreamFile (msgTypes [type], argv [argPos] + strlen (types [type]) + 1 + strlen (modes [0]));					case 1: CMmsgSetStatus     (msgTypes [type], true);  break;					case 2: CMmsgSetStatus     (msgTypes [type], false); break;					default:						CMmsgPrint (CMmsgWarning,"Ignoring illformed message [%s]!/n",argv [argPos]);//.........这里部分代码省略.........
开发者ID:bandi13,项目名称:RGIS,代码行数:101,


示例10: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	DBInt fromSelection = false, recID;	char *tableName = (char *) NULL;	char *expr = (char *) NULL;	DBMathOperand *operand;	DBObjectLIST<DBObject> *variables = new DBObjectLIST<DBObject> ("Variables");	DBObjData *data;	DBObjTable *table, *saveTable, *groups = (DBObjTable *) NULL, *saveGroups;	DBObjRecord *record;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-a","--table"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing table name!");   return (CMfailed); }			tableName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-c","--condition"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing expression!");   return (CMfailed); }			if (expr != (char *) NULL) { CMmsgPrint (CMmsgUsrError,"Expression is already set"); return (CMfailed); }			expr = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-s","--selection"))			{			fromSelection = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input file> <output file>",CMfileName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -a,--table     [table name]");			CMmsgPrint (CMmsgInfo,"     -c,--condition [expression]");			CMmsgPrint (CMmsgInfo,"     -s,--selection");			CMmsgPrint (CMmsgInfo,"     -V,--verbose");			CMmsgPrint (CMmsgInfo,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && ((int) strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }	if (verbose) RGlibPauseOpen (argv[0]);	if (expr != (char *) NULL)		{		operand = new DBMathOperand (expr);		if (operand->Expand (variables) == DBFault) return (CMfailed);		}	data = new DBObjData ();	if (((argNum > 1) && (strcmp (argv [1],"-") != 0) ? data->Read (argv [1]) : data->Read (stdin)) == DBFault)		{ delete data; delete operand; return (CMfailed); }	if (tableName == (char *) NULL) tableName = DBrNItems;	if ((table = data->Table (tableName)) == (DBObjTable *) NULL)		{ CMmsgPrint (CMmsgUsrError,"Invalid table!"); delete data; delete operand; return (CMfailed); }	saveTable = new DBObjTable (*table);	table->DeleteAll ();	if ((strcmp (tableName,DBrNItems) == 0) && ((groups = data->Table (DBrNGroups)) != (DBObjTable *) NULL))		{		saveGroups = new DBObjTable (*groups);		groups->DeleteAll ();		}	if (expr != (char *) NULL)		{		if (operand->Configure (saveTable->Fields()) == DBFault)			{ delete data; delete operand; return (CMfailed); }			for (recID = 0;recID < saveTable->ItemNum ();++recID)			{			record = saveTable->Item (recID);			if ((ret = operand->Int (record)) == true)				{				if (!fromSelection) continue;				if ((record->Flags () & DBObjectFlagSelected) == DBObjectFlagSelected) continue;				}			table->Add (new DBObjRecord (*record));			if (groups != (DBObjTable *) NULL) groups->Add (new DBObjRecord (*(saveGroups->Item (recID))));//.........这里部分代码省略.........
开发者ID:gyelnats,项目名称:RGIS,代码行数:101,


示例11: main

int main(int argc, char *argv[]) {    FILE *outFile;    DBInt argPos, argNum = argc, ret;    char *tmplName = (char *) NULL, *fieldName = (char *) NULL;    DBObjData *grdData, *tmplData = (DBObjData *) NULL;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-m", "--template")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing network!");                return (CMfailed);            }            tmplName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-f", "--field")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing fieldname!");                return (CMfailed);            }            fieldName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            CMmsgPrint(CMmsgInfo, "%s [options] <input grid> <output datastream>", CMfileName(argv[0]));            CMmsgPrint(CMmsgInfo, "     -m,--template     [template coverage]");            CMmsgPrint(CMmsgInfo, "     -f,--field        [fieldname]");            CMmsgPrint(CMmsgInfo, "     -h,--help");            return (DBSuccess);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (argNum > 3) {        CMmsgPrint(CMmsgUsrError, "Extra arguments!");        return (CMfailed);    }    outFile = (argNum > 2) && (strcmp(argv[2], "-") != 0) ? fopen(argv[2], "w") : stdout;    if (outFile == (FILE *) NULL) {        CMmsgPrint(CMmsgSysError, "Output file Opening error in: %s %d", __FILE__, __LINE__);        exit(DBFault);    }    grdData = new DBObjData();    ret = (argNum > 1) && (strcmp(argv[1], "-") != 0) ? grdData->Read(argv[1]) : grdData->Read(stdin);    if ((ret == DBFault) || ((grdData->Type() & DBTypeGrid) != DBTypeGrid)) {        delete grdData;        if (outFile != stdout) fclose(outFile);        return (CMfailed);    }    if (tmplName != (char *) NULL) {        tmplData = new DBObjData();        if (tmplData->Read(tmplName) == DBFault) {            delete grdData;            if (outFile != stdout) fclose(outFile);            delete tmplData;            return (CMfailed);        }    }    ret = RGlibRGIS2DataStream(grdData, tmplData, fieldName, outFile);    if (tmplData != (DBObjData *) NULL) delete tmplData;    delete grdData;    if (outFile != stdout) fclose(outFile);    return (ret);}
开发者ID:bmfekete,项目名称:RGIS,代码行数:74,


示例12: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, data, dataNum = 0, verbose = false;    char *title = (char *) NULL, *subject = (char *) NULL;    char *domain = (char *) NULL, *version = (char *) NULL;    char *output = (char *) NULL, **dataList = (char **) NULL;    DBObjData *grdData, *appData;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-o", "--output")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing output grid!");                return (CMfailed);            }            output = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-t", "--title")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing title!");                return (CMfailed);            }            title = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-u", "--subject")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing subject!");                return (CMfailed);            }            subject = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-d", "--domain")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing domain!");                return (CMfailed);            }            domain = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-v", "--version")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing version!");                return (CMfailed);            }            version = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-V", "--verbose")) {            verbose = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            CMmsgPrint(CMmsgInfo, "%s [options] <append grid0> ..... <append gridN>", CMfileName(argv[0]));            CMmsgPrint(CMmsgInfo, "     -o,--output    [ouptput grid]");            CMmsgPrint(CMmsgInfo, "     -t,--title     [dataset title]");            CMmsgPrint(CMmsgInfo, "     -u,--subject   [subject]");            CMmsgPrint(CMmsgInfo, "     -d,--domain    [domain]");            CMmsgPrint(CMmsgInfo, "     -v,--version   [version]");            CMmsgPrint(CMmsgInfo, "     -V,--verbose");            CMmsgPrint(CMmsgInfo, "     -h,--help");            return (DBSuccess);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (argNum < 2) {        CMmsgPrint(CMmsgUsrError, "Nothing to append");        return (DBFault);    }    dataNum = argNum - 1;    if ((dataList = (char **) realloc(dataList, dataNum * sizeof(char *))) == (char **) NULL) {        CMmsgPrint(CMmsgSysError, "Memory allocation error in: %s %d", __FILE__, __LINE__);        return (DBFault);    }    for (data = 0; data < dataNum; ++data) {        dataList[data] = argv[data + 1];    }    if (verbose) RGlibPauseOpen(argv[0]);    grdData = new DBObjData();    ret = (strcmp(dataList[0], "-") != 0) ? grdData->Read(dataList[0]) : grdData->Read(stdin);    if ((ret == DBFault) || ((grdData->Type() & DBTypeGrid) != DBTypeGrid)) {        delete grdData;        return (CMfailed);    }    if (title != (char *) NULL) grdData->Name(title);    if (subject != (char *) NULL) grdData->Document(DBDocSubject, subject);    if (domain != (char *) NULL) grdData->Document(DBDocGeoDomain, domain);//.........这里部分代码省略.........
开发者ID:bmfekete,项目名称:RGIS,代码行数:101,


示例13: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, verbose = false;    char *title = (char *) NULL, *subject = (char *) NULL;    char *domain = (char *) NULL, *version = (char *) NULL;    DBObjData *srcData, *dstData;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-t", "--title")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing title!");                return (CMfailed);            }            title = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-u", "--subject")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing subject!");                return (CMfailed);            }            subject = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-d", "--domain")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing domain!");                return (CMfailed);            }            domain = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-v", "--version")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing version!");                return (CMfailed);            }            version = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-V", "--verbose")) {            verbose = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            CMmsgPrint(CMmsgInfo, "%s [options] <input grid> <output grid>", CMfileName(argv[0]));            CMmsgPrint(CMmsgInfo, "     -t,--title     [dataset title]");            CMmsgPrint(CMmsgInfo, "     -u,--subject   [subject]");            CMmsgPrint(CMmsgInfo, "     -d,--domain    [domain]");            CMmsgPrint(CMmsgInfo, "     -v,--version   [version]");            CMmsgPrint(CMmsgInfo, "     -V,--verbose");            CMmsgPrint(CMmsgInfo, "     -h,--help");            return (DBSuccess);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (argNum > 3) {        CMmsgPrint(CMmsgUsrError, "Extra arguments!");        return (CMfailed);    }    if (verbose) RGlibPauseOpen(argv[0]);    srcData = new DBObjData();    ret = (argNum > 1) && (strcmp(argv[1], "-") != 0) ? srcData->Read(argv[1]) : srcData->Read(stdin);    if ((ret == DBFault) || (srcData->Type() != DBTypeGridContinuous)) {        delete srcData;        return (CMfailed);    }    if ((dstData = DBGridToGrid(srcData)) == (DBObjData *) NULL) {        delete srcData;        return (CMfailed);    }    if (title   == (char *) NULL)   title = (char *) "Cell Statistics";    if (subject == (char *) NULL) subject = srcData->Document(DBDocSubject);    if (domain  == (char *) NULL)  domain = srcData->Document(DBDocGeoDomain);    if (version == (char *) NULL) version = (char *) "0.01pre";    dstData->Name(title);    dstData->Document(DBDocSubject, subject);    dstData->Document(DBDocGeoDomain, domain);    srcData->Document(DBDocVersion, version);    if ((ret = RGlibGridCellStats(srcData, dstData)) == DBSuccess)        ret = (argNum > 2) && (strcmp(argv[2], "-") != 0) ?              dstData->Write(argv[2]) : dstData->Write(stdout);    delete srcData;    delete dstData;    if (verbose) RGlibPauseClose();//.........这里部分代码省略.........
开发者ID:bmfekete,项目名称:RGIS,代码行数:101,


示例14: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, verbose = false;    float coeff;    char *title = (char *) NULL, *subject = (char *) NULL;    char *domain = (char *) NULL, *version = (char *) NULL;    char *netName = (char *) NULL, *weightName = (char *) NULL;    DBInt shadeSet = DBFault, areaMult = true, coeffSet = false;    DBObjData *data, *netData, *weightData, *grdData;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-n", "--network")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing network!");                return (CMfailed);            }            netName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-w", "--weight")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing weight grid!");                return (CMfailed);            }            weightName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-m", "--mode")) {            int modeCodes[] = {true, false};            const char *modes[] = {"rate", "volume", (char *) NULL};            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing accumulation mode!");                return (CMfailed);            }            if ((areaMult = CMoptLookup(modes, argv[argPos], true)) == DBFault) {                CMmsgPrint(CMmsgUsrError, "Invalid accumulation mode!");                return (CMfailed);            }            areaMult = modeCodes[areaMult];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-f", "--coefficient")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing coefficient!");                return (CMfailed);            }            if (sscanf(argv[argPos], "%f", &coeff) != 1) {                CMmsgPrint(CMmsgUsrError, "Invalid coefficient");                return (CMfailed);            }            coeffSet = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-t", "--title")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing title!");                return (CMfailed);            }            title = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-u", "--subject")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing subject!");                return (CMfailed);            }            subject = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-d", "--domain")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing domain!");                return (CMfailed);            }            domain = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-v", "--version")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing version!");                return (CMfailed);            }            version = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-s", "--shadeset")) {            int shadeCodes[] = {DBDataFlagDispModeContStandard,                                DBDataFlagDispModeContGreyScale,                                DBDataFlagDispModeContBlueScale,                                DBDataFlagDispModeContBlueRed,                                DBDataFlagDispModeContElevation};            const char *shadeSets[] = {"standard", "grey", "blue", "blue-to-red", "elevation", (char *) NULL};//.........这里部分代码省略.........
开发者ID:bmfekete,项目名称:RGIS,代码行数:101,


示例15: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, verbose = false;    DBInt recID;    DBObjData *data;    char *tableName = (char *) NULL;    char *fieldIDName = (char *) NULL;    char *fieldXName = (char *) NULL;    char *fieldYName = (char *) NULL;    DBObjTable *table;    DBObjTableField *fieldID, *fieldX, *fieldY;    DBObjRecord *record;    DBNetworkIF *netIF;	DBCoordinate coord;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-a", "--table")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing table name!");                return (CMfailed);            }            tableName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-f", "--IDfield")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing field name!");                return (CMfailed);            }            fieldIDName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-x", "--Xfield")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing field name!");                return (CMfailed);            }            fieldXName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-y", "--Yfield")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing field name!");                return (CMfailed);            }            fieldYName = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-V", "--verbose")) {            verbose = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            CMmsgPrint(CMmsgInfo, "%s [options] <input file> <output file>", CMfileName(argv[0]));            CMmsgPrint(CMmsgInfo, "     -a, --table   [ [DBCells] | DBItems ]");            CMmsgPrint(CMmsgInfo, "     -f, --IDfield [ [CellID]  | BasinID ]");            CMmsgPrint(CMmsgInfo, "     -x, --Xfield  [ [CellXCoord] | MouthXCoord ]");            CMmsgPrint(CMmsgInfo, "     -y, --Yfield  [ [CellYCoord] | MouthYCoord ]");            CMmsgPrint(CMmsgInfo, "     -V, --verbose");            CMmsgPrint(CMmsgInfo, "     -h, --help");            return (DBSuccess);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (argNum > 3) {        CMmsgPrint(CMmsgUsrError, "Extra arguments!");        return (CMfailed);    }    if (verbose) RGlibPauseOpen(argv[0]);    if (tableName == (char *) NULL)   tableName = (char *) "DBCells";    if (fieldIDName == (char *) NULL) fieldIDName = (char *) "CellID";    if (fieldXName == (char *) NULL)  fieldXName = (char *) "CellXCoord";    if (fieldYName == (char *) NULL)  fieldYName = (char *) "CellYCoord";    data = new DBObjData();    if (((argNum > 1) && (strcmp(argv[1], "-") != 0) ? data->Read(argv[1]) : data->Read(stdin)) == DBFault) {        delete data;        return (CMfailed);    }    if ((table = data->Table(tableName)) == (DBObjTable *) NULL) {        CMmsgPrint(CMmsgUsrError, "Invalid table: %s!", tableName);        delete data;        return (CMfailed);    }    netIF = new DBNetworkIF(data);    fieldID = new DBObjTableField(fieldIDName, DBTableFieldInt,   (char *) "%8d",    sizeof (DBInt));    fieldX  = new DBObjTableField (fieldXName, DBTableFieldFloat, (char *) "%10.3f", sizeof (DBFloat4));//.........这里部分代码省略.........
开发者ID:bmfekete,项目名称:RGIS,代码行数:101,


示例16: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	char *title  = (char *) NULL, *subject = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	DBInt shadeSet = DBFault;	char *gridName   = (char *) NULL;	char *relateName = (char *) NULL;	char *joinName   = (char *) NULL;	char *varName    = (char *) NULL;	char *dateName   = (char *) NULL;	DBObjData *grdData, *tabData, *outData;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-g","--grid"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing grid!");         return (CMfailed); }			gridName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-r","--relate"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing relate field!"); return (CMfailed); }			relateName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-j","--join"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing join field!");   return (CMfailed); }			joinName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-i","--variable"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing variable field!"); return (CMfailed); }			varName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-a","--date"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing date field!");   return (CMfailed); }			dateName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");        return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-u","--subject"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing subject!");      return (CMfailed); }			subject = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");       return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");      return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-s","--shadeset"))			{			int shadeCodes [] = {	DBDataFlagDispModeContStandard,											DBDataFlagDispModeContGreyScale,											DBDataFlagDispModeContBlueScale,											DBDataFlagDispModeContBlueRed,											DBDataFlagDispModeContElevation };			const char *shadeSets [] = {	"standard","grey","blue","blue-to-red","elevation", (char *) NULL };			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing shadeset!");     return (CMfailed); }			if ((shadeSet = CMoptLookup (shadeSets,argv [argPos],true)) == DBFault)//.........这里部分代码省略.........
开发者ID:rjs80,项目名称:RGIS,代码行数:101,


示例17: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, verbose = false;    char *title = (char *) NULL, *subject = (char *) NULL;    char *domain = (char *) NULL, *version = (char *) NULL;    DBInt doMin = true, reportValue = true;    int shadeSet = DBDataFlagDispModeContGreyScale;    bool changeShadeSet = false;    DBObjData *tsData, *data;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-m", "--mode")) {            int codes[] = {true, false};            const char *strs[] = {"min", "max", (char *) NULL};            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing min-max method!");                return (CMfailed);            }            if ((doMin = CMoptLookup(strs, argv[argPos], true)) == DBFault) {                CMmsgPrint(CMmsgUsrError, "Invalid min-max method!");                return (CMfailed);            }            doMin = codes[doMin];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-r", "--report")) {            int codes[] = {true, false};            const char *strs[] = {"value", "layer", (char *) NULL};            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing report method!");                return (CMfailed);            }            if ((reportValue = CMoptLookup(strs, argv[argPos], true)) == DBFault) {                CMmsgPrint(CMmsgUsrError, "Invalid report method!");                return (CMfailed);            }            reportValue = codes[reportValue];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-t", "--title")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing title!");                return (CMfailed);            }            title = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-u", "--subject")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing subject!");                return (CMfailed);            }            subject = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-d", "--domain")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing domain!");                return (CMfailed);            }            domain = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-v", "--version")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing version!");                return (CMfailed);            }            version = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-s", "--shadeset")) {            int shadeCodes[] = {DBDataFlagDispModeContStandard,                                DBDataFlagDispModeContGreyScale,                                DBDataFlagDispModeContBlueScale,                                DBDataFlagDispModeContBlueRed,                                DBDataFlagDispModeContElevation                               };            const char *shadeSets[] = {"standard", "grey", "blue", "blue-to-red", "elevation", (char *) NULL};            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing shadeset!");                return (CMfailed);            }            if ((shadeSet = CMoptLookup(shadeSets, argv[argPos], true)) == CMfailed) {                CMmsgPrint(CMmsgUsrError, "Invalid shadeset!");                return (CMfailed);            }            shadeSet = shadeCodes[shadeSet];            changeShadeSet = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }//.........这里部分代码省略.........
开发者ID:bmfekete,项目名称:RGIS,代码行数:101,


示例18: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	DBInt recID;	bool padding = false;	char *tableName = (char *) NULL;	char *fieldName = (char *) NULL;	char *yearFieldName = (char *) NULL;	char *monthFieldName = (char *) NULL;	char *dayFieldName = (char *) NULL;	char *hourFieldName = (char *) NULL;	char *minFieldName = (char *) NULL;	char *tmp = (char *) NULL;	DBObjData *data;	DBObjTable *table;	DBObjTableField *srcField;	DBObjTableField *yearField	= (DBObjTableField *) NULL;	DBObjTableField *monthField= (DBObjTableField *) NULL;	DBObjTableField *dayField	= (DBObjTableField *) NULL;	DBObjTableField *hourField	= (DBObjTableField *) NULL;	DBObjTableField *minField	= (DBObjTableField *) NULL;	DBInt dbInputType = DBTableFieldInt;	DBInt dbInputSize = sizeof(DBShort);	DBDate date;	DBObjRecord *record;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-a","--table"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing table name!"); return (CMfailed); }			tableName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-f","--field"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing field name!"); return (CMfailed); }			fieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-y","--year"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing year field name!"); return (CMfailed); }			yearFieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-m","--month"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing month field name!"); return (CMfailed); }			monthFieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--day"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing day field name!"); return (CMfailed); }			dayFieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-o","--hour"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing hour field name!"); return (CMfailed); }			hourFieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-i","--minute"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing minute field name!"); return (CMfailed); }			minFieldName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-p","--padding"))			{			padding = true;			dbInputType = DBTableFieldString;			dbInputSize = sizeof(DBByte) * 3;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))//.........这里部分代码省略.........
开发者ID:bandi13,项目名称:RGIS,代码行数:101,


示例19: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, verbose = false;	char *title  = (char *) NULL, *subject = (char *) NULL;	char *domain = (char *) NULL, *version = (char *) NULL;	char *zoneGridName = (char *) NULL;	DBObjData *data, *zGrdData, *cGrdData;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-z","--zonegrid"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing zonegrid!");     return (CMfailed); }			zoneGridName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-t","--title"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing title!");        return (CMfailed); }			title = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-u","--subject"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing subject!");      return (CMfailed); }			subject = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-d","--domain"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing domain!");       return (CMfailed); }			domain  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-v","--version"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing version!");      return (CMfailed); }			version  = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input grid> <output table>",CMprgName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -z,--zonegrid  [discrete grid coverage]");			CMmsgPrint (CMmsgInfo,"     -t,--title     [dataset title]");			CMmsgPrint (CMmsgInfo,"     -u,--subject   [subject]");			CMmsgPrint (CMmsgInfo,"     -d,--domain    [domain]");			CMmsgPrint (CMmsgInfo,"     -v,--version   [version]");			CMmsgPrint (CMmsgInfo,"     -V,--verbose");			CMmsgPrint (CMmsgInfo,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && (strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }	if (verbose) RGlibPauseOpen (argv[0]);	if (zoneGridName == (char *) NULL)		{ CMmsgPrint (CMmsgUsrError,"Zone grid is not specified"); return (CMfailed); }	zGrdData = new DBObjData ();	if ((zGrdData->Read (zoneGridName) == DBFault) || (zGrdData->Type () != DBTypeGridDiscrete))		{ delete zGrdData; return (CMfailed); }	cGrdData = new DBObjData ();	ret = (argNum > 1) && (strcmp (argv [1],"-") != 0) ? cGrdData->Read (argv [1]) : cGrdData->Read (stdin);	if ((ret == DBFault) || (cGrdData->Type () != DBTypeGridDiscrete))		{ delete zGrdData; delete cGrdData; return (CMfailed); }	if (title	== (char *) NULL)   title = (char *) "Zone Histogram";	if (subject == (char *) NULL) subject = cGrdData->Document (DBDocSubject);	if (domain	== (char *) NULL)  domain = zGrdData->Document (DBDocGeoDomain);	if (version == (char *) NULL) version = (char *) "0.01pre";	data = new DBObjData (title,DBTypeTable);	data->Document (DBDocSubject,subject);	data->Document (DBDocGeoDomain,domain);	data->Document (DBDocVersion,version);	if ((ret = RGlibGridZoneHistogram (zGrdData,cGrdData,data)) == DBSuccess)//.........这里部分代码省略.........
开发者ID:amiara,项目名称:RGIS,代码行数:101,


示例20: main

int main(int argc, char* argv[]){	bool All_Fields = false;	char *title    = (char *) NULL, *subject   = (char *) NULL, *domain = (char *) NULL, *version = (char *) NULL;	char *citation = (char *) NULL, *institute = (char *) NULL, *source = (char *) NULL, *person  = (char *) NULL;	char *comment  = (char *) NULL, *type      = (char *) NULL, ch = 'x';	int argPos, argNum = argc, verbose = false;	FILE *file = (FILE *) NULL;	DBObjData *dbData = new DBObjData();	DBDataHeader header;	if (argc == 1) { Show_Usage(argv[0]); return 0; }	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-a","--all")) {   		All_Fields = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose")) {			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help")) { Show_Usage(argv[0]); return 0; }		if ((file == (FILE *) NULL) && (access(argv[argPos],R_OK) == 0)) file = fopen(argv[argPos],"r");						// ugly but working method to search for input filename.		argPos++;		}	if (file != (FILE *) NULL)		{		if (header.Read(file) == DBFault) { delete dbData; return(DBFault); }		fseek(file,0,SEEK_SET); //go back to beginning of file		if (dbData->Read(file) == DBFault) { delete dbData; return(DBFault); }		fclose(file);		}	else		{		CMmsgPrint (CMmsgUsrError,"No data file, reading from stdin!");		if (header.Read(stdin) == DBFault) { delete dbData; return(DBFault); }		if (dbData->Read(stdin) == DBFault) { delete dbData; return(DBFault); }		}	if(All_Fields)		{		title     = dbData->Name();		domain    = dbData->Document(DBDocGeoDomain);		subject   = dbData->Document(DBDocSubject);		version   = dbData->Document(DBDocVersion);		type      = DBDataTypeString(header.Type ());		institute = dbData->Document(DBDocCitationInst); 		person    = dbData->Document(DBDocOwnerPerson);		citation  = dbData->Document(DBDocCitationRef);		comment   = dbData->Document(DBDocComment);		source    = dbData->Document(DBDocSourcePerson);		}	else		{		for (argPos = 1;argPos < argNum; ) {			if (CMargTest (argv [argPos],"-t","--title")) {				title = dbData->Name();				if(title == (char *) NULL) title = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-d","--domain")) {				domain = dbData->Document(DBDocGeoDomain);				if(domain == (char *) NULL) domain = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-s","--subject")) {				subject = dbData->Document(DBDocSubject);				if(subject == (char *) NULL) subject = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-v","--version")) {				version = dbData->Document(DBDocVersion);				if(version == (char *) NULL) version = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-n","--institute")) {				institute = dbData->Document(DBDocCitationInst); 				if(institute == (char *) NULL) institute = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-p","--person")) {				person = dbData->Document(DBDocOwnerPerson);				if(person == (char *) NULL) person = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;				continue;			}			if (CMargTest (argv [argPos],"-i","--citation")) {				citation = dbData->Document(DBDocCitationRef);				if(citation == (char *) NULL) citation = &ch;				if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;//.........这里部分代码省略.........
开发者ID:amiara,项目名称:RGIS,代码行数:101,


示例21: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, tblLayout;    int tblLayouts[2];    const char *layoutTexts[] = {"vertical", "horizontal", (char *) NULL};    char *sample = (char *) NULL;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-S", "--sample")) {            if ((argNum = CMargShiftLeft(argPos, argv, argc)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "%s: Missing sampling coverage!", CMfileName(argv[0]));                return (CMfailed);            }            sample = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argc)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-L", "--layout")) {            if ((argNum = CMargShiftLeft(argPos, argv, argc)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing layout!");                return (CMfailed);            }            if ((tblLayout = CMoptLookup(layoutTexts, argv[argPos], true)) == CMfailed) {                CMmsgPrint(CMmsgUsrError, "%s: Invalid table layout [%s]!", CMfileName(argv[0]), argv[argPos]);                return (CMfailed);            }            tblLayout = tblLayouts[tblLayout];            if ((argNum = CMargShiftLeft(argPos, argv, argc)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            fprintf(stdout, "%s [options] <ncgis grid> <ascii table>", CMfileName(argv[0]));            fprintf(stdout, "     -S,--sampling");            fprintf(stdout, "     -L,--layout [vertical|horizontal]");            fprintf(stdout, "     -h,--help");            return (NCsucceeded);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (sample == (char *) NULL) {        CMmsgPrint(CMmsgUsrError, "%s: Missing template!", CMfileName(argv[0]));        return (CMfailed);    }    if (argNum < 2) {        CMmsgPrint(CMmsgUsrError, "%s: Too few arguments!", CMfileName(argv[0]));        return (CMfailed);    }/*	if ((objGrid = NCObjDataOpen (argv [1],true)) == (NCObjData_t *) NULL) return (CMfailed);	if ((objGrid->DType != NCTypeContGrid) && (objGrid->DType != NCTypeDiscGrid))	{		CMmsgPrint (CMmsgUsrError, "%s: Non-grid input coverage!", CMfileName (argv [0]));		NCObjDataFree (objGrid);		return (CMfailed);	}	if ((objData = NCObjDataOpen (sample,true)) == (NCObjData_t *) NULL)	{		NCObjDataFree (objGrid);		return (CMfailed);	}	if ((objData->DType != NCTypePoint)    && (objData->DType != NCTypeNetwork))	{		CMmsgPrint (CMmsgUsrError, "%s: Invalid sampling coverage!", CMfileName (argv [0]));		NCObjDataFree (objGrid);		NCObjDataFree (objData);		return (CMfailed);	}	objTable = NCGridContPointSampling (objGrid,objData,tblLayout);	NCObjDataFree (objGrid);	NCObjDataFree (objData);*/    return (CMsucceeded);}
开发者ID:bmfekete,项目名称:RGIS,代码行数:78,


示例22: main

int main (int argc,char *argv [])	{	int argPos, argNum = argc, ret, i, fieldNum = 0, verbose = false;	DBObjData *data;	char *tableName = (char *) NULL, **fieldNames;	DBObjTable *table;	DBObjTableField *field;	for (argPos = 1;argPos < argNum; )		{		if (CMargTest (argv [argPos],"-a","--table"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing table name!");   return (CMfailed); }			tableName = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-f","--field"))			{			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos)				{ CMmsgPrint (CMmsgUsrError,"Missing field name!");   return (CMfailed); }			fieldNames = fieldNum > 0 ? (char **) realloc (fieldNames,(fieldNum + 1) * sizeof (char *)) :												 (char **) calloc (1,sizeof (char *));			if (fieldNames == (char **) NULL)				{ CMmsgPrint (CMmsgSysError, "Memory allocation error in: %s %d",__FILE__,__LINE__); return (CMfailed); }			fieldNames [fieldNum++] = argv [argPos];			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-V","--verbose"))			{			verbose = true;			if ((argNum = CMargShiftLeft (argPos,argv,argNum)) <= argPos) break;			continue;			}		if (CMargTest (argv [argPos],"-h","--help"))			{			CMmsgPrint (CMmsgInfo,"%s [options] <input file> <output file>",CMprgName(argv[0]));			CMmsgPrint (CMmsgInfo,"     -a,--table     [table name]");			CMmsgPrint (CMmsgInfo,"     -f,--field     [field name]");			CMmsgPrint (CMmsgInfo,"     -V,--verbose");			CMmsgPrint (CMmsgInfo,"     -h,--help");			return (DBSuccess);			}		if ((argv [argPos][0] == '-') && (strlen (argv [argPos]) > 1))			{ CMmsgPrint (CMmsgUsrError,"Unknown option: %s!",argv [argPos]); return (CMfailed); }		argPos++;		}	if (argNum > 3) { CMmsgPrint (CMmsgUsrError,"Extra arguments!"); return (CMfailed); }	if (verbose) RGlibPauseOpen (argv[0]);	if (tableName == (char *) NULL) tableName = DBrNItems;	if (fieldNum < 1) { CMmsgPrint (CMmsgUsrError,"Missing field name!"); return (CMfailed); }	data = new DBObjData ();	if (((argNum > 1) && (strcmp (argv [1],"-") != 0) ? data->Read (argv [1]) : data->Read (stdin)) == DBFault)		{ delete data; return (CMfailed); }	if ((table = data->Table (tableName)) == (DBObjTable *) NULL)		{ CMmsgPrint (CMmsgUsrError,"Invalid table: %s!",tableName); delete data; return (CMfailed); }	for (i = 0;i < fieldNum;++i)		{		if ((field = table->Field (fieldNames [i])) == (DBObjTableField *) NULL)			{ CMmsgPrint (CMmsgUsrError,"Invalid field: %s!",fieldNames [i]); continue; }		if (DBTableFieldIsOptional (field) != true)			{ CMmsgPrint (CMmsgUsrError,"Required field!"); continue; }		table->DeleteField (field); 		}	ret = (argNum > 2) && (strcmp (argv [2],"-") != 0) ? data->Write (argv [2]) : data->Write (stdout);	free (fieldNames);	delete data;	if (verbose) RGlibPauseClose ();	return (ret);	}
开发者ID:amiara,项目名称:RGIS,代码行数:80,


示例23: main

int main(int argc, char *argv[]) {    int argPos, argNum = argc, ret, verbose = false;    char *title = (char *) NULL, *subject = (char *) NULL;    char *domain = (char *) NULL, *version = (char *) NULL;    DBObjData *netData, *pntData;    for (argPos = 1; argPos < argNum;) {        if (CMargTest (argv[argPos], "-t", "--title")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing title!");                return (CMfailed);            }            title = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-u", "--subject")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing subject!");                return (CMfailed);            }            subject = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-d", "--domain")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing domain!");                return (CMfailed);            }            domain = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-v", "--version")) {            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) {                CMmsgPrint(CMmsgUsrError, "Missing version!");                return (CMfailed);            }            version = argv[argPos];            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-V", "--verbose")) {            verbose = true;            if ((argNum = CMargShiftLeft(argPos, argv, argNum)) <= argPos) break;            continue;        }        if (CMargTest (argv[argPos], "-h", "--help")) {            CMmsgPrint(CMmsgInfo, "%s [options] <input network> <output point>", CMfileName(argv[0]));            CMmsgPrint(CMmsgInfo, "     -t,--title     [dataset title]");            CMmsgPrint(CMmsgInfo, "     -u,--subject   [subject]");            CMmsgPrint(CMmsgInfo, "     -d,--domain    [domain]");            CMmsgPrint(CMmsgInfo, "     -v,--version   [version]");            CMmsgPrint(CMmsgInfo, "     -V,--verbose");            CMmsgPrint(CMmsgInfo, "     -h,--help");            return (DBSuccess);        }        if ((argv[argPos][0] == '-') && (strlen(argv[argPos]) > 1)) {            CMmsgPrint(CMmsgUsrError, "Unknown option: %s!", argv[argPos]);            return (CMfailed);        }        argPos++;    }    if (argNum > 3) {        CMmsgPrint(CMmsgUsrError, "Extra arguments!");        return (CMfailed);    }    if (verbose) RGlibPauseOpen(argv[0]);    netData = new DBObjData();    ret = (argNum > 1) && (strcmp(argv[1], "-") != 0) ? netData->Read(argv[1]) : netData->Read(stdin);    if ((ret == DBFault) || (netData->Type() != DBTypeNetwork)) {        delete netData;        return (CMfailed);    }    if (title == (char *) NULL) title = (char *) "River Confluences";    if (subject == (char *) NULL) subject = netData->Document(DBDocSubject);    if (domain == (char *) NULL) domain = (char *) netData->Document(DBDocGeoDomain);    if (version == (char *) NULL) version = (char *) "0.01pre";    pntData = new DBObjData(title, DBTypeVectorPoint);    pntData->Document(DBDocSubject, subject);    pntData->Document(DBDocGeoDomain, domain);    pntData->Document(DBDocVersion, version);    if ((ret = RGlibNetworkConfluences(netData, pntData)) == DBSuccess)        ret = (argNum > 2) && (strcmp(argv[2], "-") != 0) ? pntData->Write(argv[2]) : pntData->Write(stdout);    delete netData;    delete pntData;    if (verbose) RGlibPauseClose();    return (ret);}
开发者ID:bmfekete,项目名称:RGIS,代码行数:96,



注:本文中的CMargShiftLeft函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CMargTest函数代码示例
C++ CM_TransformedPointContents函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。