IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 6027


Ignore:
Timestamp:
Jan 16, 2006, 11:25:15 PM (21 years ago)
Author:
magnier
Message:

minor diffs

Location:
branches/eam_rel9_b1/psLib/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_rel9_b1/psLib/src/math/psPolynomial.c

    r5624 r6027  
    77*  polynomials.  It also contains a Gaussian functions.
    88*
    9 *  @version $Revision: 1.133 $ $Name: not supported by cvs2svn $
    10 *  @date $Date: 2005-11-30 02:00:09 $
     9*  @version $Revision: 1.133.6.1 $ $Name: not supported by cvs2svn $
     10*  @date $Date: 2006-01-17 09:22:39 $
    1111*
    1212*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    10311031    return(tmp);
    10321032}
    1033 
  • branches/eam_rel9_b1/psLib/src/math/psPolynomial.h

    r5294 r6027  
    1111 *  @author GLG, MHPCC
    1212 *
    13  *  @version $Revision: 1.58 $ $Name: not supported by cvs2svn $
    14  *  @date $Date: 2005-10-12 21:02:20 $
     13 *  @version $Revision: 1.58.16.1 $ $Name: not supported by cvs2svn $
     14 *  @date $Date: 2006-01-17 09:22:39 $
    1515 *
    1616 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  • branches/eam_rel9_b1/psLib/src/sys/psConfigure.c

    r5838 r6027  
    1313 *  @author Robert DeSonia, MHPCC
    1414 *
    15  *  @version $Revision: 1.12.6.1 $ $Name: not supported by cvs2svn $
    16  *  @date $Date: 2005-12-24 00:00:22 $
     15 *  @version $Revision: 1.12.6.2 $ $Name: not supported by cvs2svn $
     16 *  @date $Date: 2006-01-17 09:24:55 $
    1717 *
    1818 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
  • branches/eam_rel9_b1/psLib/src/types/psMetadataConfig.c

    r5826 r6027  
    1010*  @author Eric Van Alst, MHPCC
    1111*
    12 *  @version $Revision: 1.48.16.1 $ $Name: not supported by cvs2svn $
    13 *  @date $Date: 2005-12-23 02:04:42 $
     12*  @version $Revision: 1.48.16.2 $ $Name: not supported by cvs2svn $
     13*  @date $Date: 2006-01-17 09:25:15 $
    1414*
    1515*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    12251225    PS_ASSERT_PTR_NON_NULL(md, NULL);
    12261226
    1227     psString newString = NULL;
    1228     psString newStr = NULL;
    1229     char mdString[16000];
     1227    psString mdString = NULL;
     1228    psString content = NULL;
     1229
    12301230    psMetadataItem *item = NULL;
    12311231    psMetadataIterator *iter = psMetadataIteratorAlloc(md, PS_LIST_HEAD, NULL);
    1232     psDataType type = PS_DATA_UNKNOWN;
    1233     //    int size = 0;
    1234     int i = 0;
    1235     char content[MAXSTR];
    1236     char buffer[MAXSTR];
    1237     char *buffer2;
    1238     strcpy(content, "\0");
    1239     strcpy(mdString, "\0");
    12401232
    12411233    while ( (item = psMetadataGetAndIncrement(iter)) ) {
    1242         type = item->type;
    1243         if ( type == PS_DATA_STRING) {
    1244             type = PS_DATA_STRING;
    1245         }
    1246         if ( type == PS_DATA_VECTOR) {
    1247             type = PS_DATA_VECTOR;
    1248         }
    1249         if ( type == PS_DATA_TIME) {
    1250             type = PS_DATA_TIME;
    1251         }
    1252         if ( item->type == PS_DATA_METADATA) {
    1253             type = PS_DATA_METADATA;
    1254         }
    12551234        if (item == NULL) {
    1256             type = PS_DATA_UNKNOWN;
    1257         }
    1258 
    1259         switch (type) {
     1235            // XXX : this is probably not the right error value
     1236            psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psMetadata_METATYPE_INVALID, PS_DATA_UNKNOWN);
     1237            psFree(iter);
     1238            return NULL;
     1239        }
     1240
     1241        // In this block, the single item is used to build 'content'
     1242        switch (item->type) {
    12601243        case PS_DATA_BOOL:
    1261             //            size = strlen(item->name);
    1262             snprintf(content, MAXSTR, "%s BOOL  ", item->name);
    1263             strncat(mdString, content, MAXSTR);
    1264             if ( item->data.B )
    1265                 strncat(mdString, "TRUE", MAXSTR);
    1266             else
    1267                 strncat(mdString, "FALSE", MAXSTR);
     1244            psStringAppend (&content, "%s BOOL  ", item->name);
     1245            if ( item->data.B ) {
     1246                psStringAppend(&content, "TRUE");
     1247            } else {
     1248                psStringAppend(&content, "FALSE");
     1249            }
    12681250            if ( item->comment != NULL ) {
    1269                 //                size = strlen(item->comment);
    1270                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1271                 strncat(mdString, content, MAXSTR);
     1251                psStringAppend(&content, " #%s", item->comment);
     1252            }
     1253            psStringAppend(&content, " \n", item->comment);
     1254            break;
     1255        case PS_DATA_S32:
     1256            psStringAppend(&content, "%s S32  ", item->name);
     1257            psStringAppend(&content, "%d ", item->data.S32);
     1258            if ( strncmp(item->comment,"",2) ) {
     1259                psStringAppend(&content, " #%s", item->comment);
     1260            }
     1261            psStringAppend(&content, " \n");
     1262            break;
     1263        case PS_DATA_F32:
     1264            psStringAppend(&content, "%s F32  ", item->name);
     1265            psStringAppend(&content, "%22.15g ", item->data.F32);
     1266            if ( strncmp(item->comment,"",2) ) {
     1267                psStringAppend(&content, " #%s", item->comment);
     1268            }
     1269            psStringAppend(&content, " \n");
     1270            break;
     1271        case PS_DATA_F64:
     1272            psStringAppend(&content, "%s F64  ", item->name);
     1273            psStringAppend(&content, "%22.15g ", item->data.F64);
     1274            if ( strncmp(item->comment,"",2) ) {
     1275                psStringAppend(&content, " #%s", item->comment);
     1276            }
     1277            psStringAppend(&content, " \n");
     1278            break;
     1279        case PS_DATA_STRING:
     1280            psStringAppend(&content, "%s STR  ", item->name);
     1281            psStringAppend(&content, "%s ", ((char *)(item->data.V)));
     1282            if ( strncmp(item->comment,"",2) ) {
     1283                psStringAppend(&content, " #%s", item->comment);
     1284            }
     1285            psStringAppend(&content, " \n");
     1286            break;
     1287        case PS_DATA_METADATA:
     1288            psStringAppend(&content, "\n%s  METADATA  ", item->name);
     1289            psString newStr = psMetadataConfigFormat(item->data.md);
     1290            // XXX need to check for NULL return value, implying error
     1291            //     from a lower level
     1292
     1293            // add 3 extra spaces to each metadata folder item
     1294            char *buffer2 = strtok(newStr, "\n");
     1295            while( buffer2 != NULL ) {
     1296                psStringAppend(&content, "\n   %s", buffer2);
     1297                buffer2 = strtok(NULL, "\n");
     1298            }
     1299            if ( strncmp(item->comment,"",2) ) {
     1300                psStringAppend(&content, "\nEND   #%s\n\n", item->comment);
    12721301            } else {
    1273                 snprintf(content, MAXSTR, "\n");
    1274                 strncat(mdString, content, MAXSTR);
    1275             }
    1276             break;
    1277         case PS_DATA_S32:
    1278             //            size = strlen(item->name);
    1279             snprintf(content, MAXSTR, "%s S32  ", item->name);
    1280             strncat(mdString, content, MAXSTR);
    1281             snprintf(content, MAXSTR, "%d ", item->data.S32);
    1282             strncat(mdString, content, MAXSTR);
    1283             if ( strncmp(item->comment,"",2) ) {
    1284                 //                size = strlen(item->comment);
    1285                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1286                 strncat(mdString, content, MAXSTR);
    1287             } else {
    1288                 snprintf(content, MAXSTR, "\n");
    1289                 strncat(mdString, content, MAXSTR);
    1290             }
    1291             break;
    1292         case PS_DATA_F32:
    1293             //            size = strlen(item->name);
    1294             snprintf(content, MAXSTR, "%s F32  ", item->name);
    1295             strncat(mdString, content, MAXSTR);
    1296             snprintf(content, MAXSTR, "%22.15g ", item->data.F32);
    1297             strncat(mdString, content, MAXSTR);
    1298             if ( strncmp(item->comment,"",2) ) {
    1299                 //            if ( item->comment != NULL ) {
    1300                 //                size = strlen(item->comment);
    1301                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1302                 strncat(mdString, content, MAXSTR);
    1303             } else {
    1304                 snprintf(content, MAXSTR, "\n");
    1305                 strncat(mdString, content, MAXSTR);
    1306             }
    1307             break;
    1308         case PS_DATA_F64:
    1309             //            size = strlen(item->name);
    1310             snprintf(content, MAXSTR, "%s F64  ", item->name);
    1311             strncat(mdString, content, MAXSTR);
    1312             snprintf(content, MAXSTR, "%22.15g ", item->data.F64);
    1313             strncat(mdString, content, MAXSTR);
    1314             if ( strncmp(item->comment,"",2) ) {
    1315                 //            if ( item->comment != NULL ) {
    1316                 //            if ( !strncmp((char*)item->comment, "", 2) ) {
    1317                 //                size = strlen(item->comment);
    1318                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1319                 strncat(mdString, content, MAXSTR);
    1320             } else {
    1321                 snprintf(content, MAXSTR, "\n");
    1322                 strncat(mdString, content, MAXSTR);
    1323             }
    1324             break;
    1325         case PS_DATA_STRING:
    1326             //            size = strlen(item->name);
    1327             snprintf(content, MAXSTR, "%s STR  ", item->name);
    1328             strncat(mdString, content, MAXSTR);
    1329             //            size = strlen(((char *)(item->data.V)));
    1330             snprintf(content, MAXSTR, "%s ", ((char *)(item->data.V)));
    1331             strncat(mdString, content, MAXSTR);
    1332             if ( strncmp(item->comment,"",2) ) {
    1333                 //            if ( item->comment != NULL ) {
    1334                 //                size = strlen(item->comment);
    1335                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1336                 strncat(mdString, content, MAXSTR);
    1337             } else {
    1338                 snprintf(content, MAXSTR, "\n");
    1339                 strncat(mdString, content, MAXSTR);
    1340             }
    1341             break;
    1342         case PS_DATA_METADATA:
    1343             snprintf(content, MAXSTR, "\n%s  METADATA  ", item->name);
    1344             strncat(mdString, content, MAXSTR);
    1345 
    1346             newStr = psMetadataConfigFormat(item->data.md);
    1347             strncpy(buffer, (char *)newStr, MAXSTR);
    1348             buffer2 = strtok(buffer, "\n");
    1349             while( buffer2 != NULL ) {
    1350                 snprintf(content, MAXSTR, "\n   %s", buffer2);
    1351                 strncat(mdString, content, MAXSTR);
    1352                 buffer2 = strtok(NULL, "\n");
    1353             }
    1354             if ( strncmp(item->comment,"",2) ) {
    1355                 //            if ( item->comment != NULL ) {
    1356                 snprintf(content, MAXSTR, "\nEND   #%s\n\n", item->comment);
    1357                 strncat(mdString, content, MAXSTR);
    1358             } else {
    1359                 snprintf(content, MAXSTR, "\nEND\n\n");
    1360                 strncat(mdString, content, MAXSTR);
     1302                psStringAppend(&content, "\nEND\n\n");
    13611303            }
    13621304            psFree(newStr);
    13631305            break;
    13641306        case PS_DATA_TIME:
    1365             snprintf(content, MAXSTR, "%s ", item->name);
    1366             if ( ((psTime*)(item->data.V))->type == PS_TIME_UTC )
    1367                 strncat(content, "PS_TIME_UTC  ", MAXSTR);
    1368             else if ( ((psTime*)(item->data.V))->type == PS_TIME_TAI )
    1369                 strncat(content, "PS_TIME_TAI  ", MAXSTR);
    1370             else if ( ((psTime*)(item->data.V))->type == PS_TIME_UT1 )
    1371                 strncat(content, "PS_TIME_UT1  ", MAXSTR);
    1372             else if ( ((psTime*)(item->data.V))->type == PS_TIME_TT )
    1373                 strncat(content, "PS_TIME_TT  ", MAXSTR);
     1307            psStringAppend(&content, "%s ", item->name);
     1308            psTime *time = item->data.V;
     1309            if ( time->type == PS_TIME_UTC )
     1310                psStringAppend(&content, "PS_TIME_UTC  ");
     1311            else if ( time->type == PS_TIME_TAI )
     1312                psStringAppend(&content, "PS_TIME_TAI  ");
     1313            else if ( time->type == PS_TIME_UT1 )
     1314                psStringAppend(&content, "PS_TIME_UT1  ");
     1315            else if ( time->type == PS_TIME_TT )
     1316                psStringAppend(&content, "PS_TIME_TT  ");
    13741317            else {
    1375                 psError(PS_ERR_BAD_PARAMETER_VALUE, true,
    1376                         PS_ERRORTEXT_psMetadata_METATYPE_INVALID, type);
     1318                psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psMetadata_METATYPE_INVALID, time->type);
     1319                // XXX memory leak: should free content and mdString before returning
    13771320                psFree(iter);
    13781321                return NULL;
    13791322            }
    1380             strncat(mdString, content, MAXSTR);
    1381 
    1382             snprintf(content, MAXSTR, "%ld, ", (long)((psTime*)(item->data.V))->sec);
    1383             strncat(mdString, content, MAXSTR);
    1384             snprintf(content, MAXSTR, "%u, ", ((psTime*)(item->data.V))->nsec);
    1385             strncat(mdString, content, MAXSTR);
    1386             if ( ((psTime*)(item->data.V))->leapsecond )
    1387                 strncat(mdString, "T ", MAXSTR);
     1323
     1324            psStringAppend(&content, "%ld, ", (long)time->sec);
     1325            psStringAppend(&content, "%u, ", time->nsec);
     1326            if ( time->leapsecond )
     1327                psStringAppend(&content, "T ");
    13881328            else
    1389                 strncat(mdString, "F ", MAXSTR);
     1329                psStringAppend(&content, "F ");
    13901330            if ( strncmp(item->comment,"",2) ) {
    1391                 //            if ( item->comment != NULL ) {
    1392                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1393                 strncat(mdString, content, MAXSTR);
    1394             } else {
    1395                 snprintf(content, MAXSTR, "\n");
    1396                 strncat(mdString, content, MAXSTR);
    1397             }
     1331                psStringAppend(&content, " #%s", item->comment);
     1332            }
     1333            psStringAppend(&content, " \n");
    13981334            break;
    13991335        case PS_DATA_VECTOR:
    1400             //            size = strlen(item->name);
    1401             snprintf(content, MAXSTR, "@%s ", item->name);
    1402             strncat(mdString, content, MAXSTR);
    1403             type = ((psVector*)(item->data.V))->type.type;
    1404             switch (type) {
     1336            psStringAppend(&content, "@%s ", item->name);
     1337            psVector *vector = item->data.V;
     1338
     1339            switch (vector->type.type) {
    14051340            case PS_DATA_S32:
    1406                 strncat(mdString, "S32 ", MAXSTR);
    1407                 for (i = 0; ((psVector*)(item->data.V))->data.S32[i] != 0; i++) {
    1408                     snprintf(content, MAXSTR, "%d",
    1409                              ((psVector*)(item->data.V))->data.S32[i]);
    1410                     if ( ((psVector*)(item->data.V))->data.S32[i+1] != 0 ) {
    1411                         strncat(content, ", ", MAXSTR);
    1412                     }
    1413                     strncat(mdString, content, MAXSTR);
     1341                psStringAppend(&content, "S32 ");
     1342                for (int i = 0; i < vector->n; i++) {
     1343                    psStringAppend(&content, "%d ", vector->data.S32[i]);
    14141344                }
    14151345                break;
    14161346            case PS_DATA_F32:
    1417                 strncat(mdString, "F32 ", MAXSTR);
    1418                 for (i = 0; ((psVector*)(item->data.V))->data.F32[i] != 0; i++) {
    1419                     snprintf(content, MAXSTR, "%f",
    1420                              ((psVector*)(item->data.V))->data.F32[i]);
    1421                     if ( ((psVector*)(item->data.V))->data.F32[i+1] != 0 ) {
    1422                         strncat(content, ", ", MAXSTR);
    1423                     }
    1424                     strncat(mdString, content, MAXSTR);
     1347                psStringAppend(&content, "F32 ", MAXSTR);
     1348                for (int i = 0; i < vector->n; i++) {
     1349                    psStringAppend(&content, "%f ", vector->data.F32[i]);
    14251350                }
    14261351                break;
    14271352            case PS_DATA_F64:
    1428                 strncat(mdString, "F64 ", MAXSTR);
    1429                 for (i = 0; ((psVector*)(item->data.V))->data.F64[i] != 0; i++) {
    1430                     snprintf(content, MAXSTR, "%lf",
    1431                              ((psVector*)(item->data.V))->data.F64[i]);
    1432                     if ( ((psVector*)(item->data.V))->data.F64[i+1] != 0 ) {
    1433                         strncat(content, ", ", MAXSTR);
    1434                     }
    1435                     strncat(mdString, content, MAXSTR);
     1353                psStringAppend(&content, "F64 ", MAXSTR);
     1354                for (int i = 0; i < vector->n; i++) {
     1355                    psStringAppend(&content, "%lf", vector->data.F64[i]);
    14361356                }
    14371357                break;
     
    14391359            default:
    14401360                psError(PS_ERR_BAD_PARAMETER_VALUE, true,
    1441                         PS_ERRORTEXT_psMetadata_METATYPE_INVALID, type);
     1361                        PS_ERRORTEXT_psMetadata_METATYPE_INVALID, vector->type.type);
    14421362                psFree(iter);
     1363                // XXX memory leak: should free content and mdString before returning
    14431364                return NULL;
    14441365            }
    14451366            if ( strncmp(item->comment,"",2) ) {
    1446                 //            if ( item->comment != NULL ) {
    1447                 //                size = strlen(item->comment);
    1448                 snprintf(content, MAXSTR, " #%s \n", item->comment);
    1449                 strncat(mdString, content, MAXSTR);
    1450             } else {
    1451                 snprintf(content, MAXSTR, "\n");
    1452                 strncat(mdString, content, MAXSTR);
    1453             }
     1367                psStringAppend(&content, " #%s", item->comment);
     1368            }
     1369            psStringAppend(&content, " \n");
    14541370            break;
    14551371        case PS_DATA_UNKNOWN:
    14561372        default:
    14571373            psError(PS_ERR_BAD_PARAMETER_VALUE, true,
    1458                     PS_ERRORTEXT_psMetadata_METATYPE_INVALID, type);
     1374                    PS_ERRORTEXT_psMetadata_METATYPE_INVALID, item->type);
    14591375            psFree(iter);
     1376            // XXX memory leak: should free content and mdString before returning
    14601377            return NULL;
    14611378        }
    1462     }
    1463     newString = psStringNCopy(mdString, 16000);
     1379        psStringAppend(&mdString, content);
     1380        psFree(content);
     1381        content = NULL;
     1382    }
    14641383    psFree(iter);
    1465     return newString;
     1384    return mdString;
    14661385}
    14671386
Note: See TracChangeset for help on using the changeset viewer.