IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 15766


Ignore:
Timestamp:
Dec 7, 2007, 3:24:51 PM (18 years ago)
Author:
jhoblitt
Message:

update

Location:
trunk/ippdb
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippdb/src/ippdb.c

    r15582 r15766  
    35593559static void rawExpRowFree(rawExpRow *object);
    35603560
    3561 rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
     3561rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
    35623562{
    35633563    rawExpRow       *_object;
     
    35893589    _object->ccd_temp = ccd_temp;
    35903590    _object->posang = posang;
     3591    _object->M1_x = M1_x;
     3592    _object->M1_y = M1_y;
     3593    _object->M1_z = M1_z;
     3594    _object->M1_tip = M1_tip;
     3595    _object->M1_tilt = M1_tilt;
     3596    _object->M2_x = M2_x;
     3597    _object->M2_y = M2_y;
     3598    _object->M2_z = M2_z;
     3599    _object->M2_tip = M2_tip;
     3600    _object->M2_tilt = M2_tilt;
     3601    _object->env_temperature = env_temperature;
     3602    _object->env_humidity = env_humidity;
     3603    _object->env_wind_speed = env_wind_speed;
     3604    _object->env_wind_dir = env_wind_dir;
     3605    _object->pon_time = pon_time;
    35913606    _object->user_1 = user_1;
    35923607    _object->user_2 = user_2;
     
    37343749        return false;
    37353750    }
     3751    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, 0.0)) {
     3752        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     3753        psFree(md);
     3754        return false;
     3755    }
     3756    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, 0.0)) {
     3757        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     3758        psFree(md);
     3759        return false;
     3760    }
     3761    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, 0.0)) {
     3762        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     3763        psFree(md);
     3764        return false;
     3765    }
     3766    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, 0.0)) {
     3767        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     3768        psFree(md);
     3769        return false;
     3770    }
     3771    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, 0.0)) {
     3772        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     3773        psFree(md);
     3774        return false;
     3775    }
     3776    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, 0.0)) {
     3777        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     3778        psFree(md);
     3779        return false;
     3780    }
     3781    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, 0.0)) {
     3782        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     3783        psFree(md);
     3784        return false;
     3785    }
     3786    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, 0.0)) {
     3787        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     3788        psFree(md);
     3789        return false;
     3790    }
     3791    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, 0.0)) {
     3792        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     3793        psFree(md);
     3794        return false;
     3795    }
     3796    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, 0.0)) {
     3797        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     3798        psFree(md);
     3799        return false;
     3800    }
     3801    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, 0.0)) {
     3802        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     3803        psFree(md);
     3804        return false;
     3805    }
     3806    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, 0.0)) {
     3807        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     3808        psFree(md);
     3809        return false;
     3810    }
     3811    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, 0.0)) {
     3812        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     3813        psFree(md);
     3814        return false;
     3815    }
     3816    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, 0.0)) {
     3817        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     3818        psFree(md);
     3819        return false;
     3820    }
     3821    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, 0.0)) {
     3822        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     3823        psFree(md);
     3824        return false;
     3825    }
    37363826    if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, 0.0)) {
    37373827        psError(PS_ERR_UNKNOWN, false, "failed to add item user_1");
     
    37873877}
    37883878
    3789 bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
     3879bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
    37903880{
    37913881    psMetadata *md = psMetadataAlloc();
     
    39023992    if (!psMetadataAdd(md, PS_LIST_TAIL, "posang", PS_DATA_F64, NULL, posang)) {
    39033993        psError(PS_ERR_UNKNOWN, false, "failed to add item posang");
     3994        psFree(md);
     3995        return false;
     3996    }
     3997    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, M1_x)) {
     3998        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     3999        psFree(md);
     4000        return false;
     4001    }
     4002    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, M1_y)) {
     4003        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     4004        psFree(md);
     4005        return false;
     4006    }
     4007    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, M1_z)) {
     4008        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     4009        psFree(md);
     4010        return false;
     4011    }
     4012    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, M1_tip)) {
     4013        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     4014        psFree(md);
     4015        return false;
     4016    }
     4017    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, M1_tilt)) {
     4018        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     4019        psFree(md);
     4020        return false;
     4021    }
     4022    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, M2_x)) {
     4023        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     4024        psFree(md);
     4025        return false;
     4026    }
     4027    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, M2_y)) {
     4028        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     4029        psFree(md);
     4030        return false;
     4031    }
     4032    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, M2_z)) {
     4033        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     4034        psFree(md);
     4035        return false;
     4036    }
     4037    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, M2_tip)) {
     4038        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     4039        psFree(md);
     4040        return false;
     4041    }
     4042    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, M2_tilt)) {
     4043        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     4044        psFree(md);
     4045        return false;
     4046    }
     4047    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, env_temperature)) {
     4048        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     4049        psFree(md);
     4050        return false;
     4051    }
     4052    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, env_humidity)) {
     4053        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     4054        psFree(md);
     4055        return false;
     4056    }
     4057    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, env_wind_speed)) {
     4058        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     4059        psFree(md);
     4060        return false;
     4061    }
     4062    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, env_wind_dir)) {
     4063        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     4064        psFree(md);
     4065        return false;
     4066    }
     4067    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, pon_time)) {
     4068        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
    39044069        psFree(md);
    39054070        return false;
     
    39684133bool rawExpInsertObject(psDB *dbh, rawExpRow *object)
    39694134{
    3970     return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object->filelevel, object->workdir, object->reduction, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault);
     4135    return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object->filelevel, object->workdir, object->reduction, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->M1_x, object->M1_y, object->M1_z, object->M1_tip, object->M1_tilt, object->M2_x, object->M2_y, object->M2_z, object->M2_tip, object->M2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault);
    39714136}
    39724137
     
    41564321        return false;
    41574322    }
     4323    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, object->M1_x)) {
     4324        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     4325        psFree(md);
     4326        return false;
     4327    }
     4328    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, object->M1_y)) {
     4329        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     4330        psFree(md);
     4331        return false;
     4332    }
     4333    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, object->M1_z)) {
     4334        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     4335        psFree(md);
     4336        return false;
     4337    }
     4338    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, object->M1_tip)) {
     4339        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     4340        psFree(md);
     4341        return false;
     4342    }
     4343    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, object->M1_tilt)) {
     4344        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     4345        psFree(md);
     4346        return false;
     4347    }
     4348    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, object->M2_x)) {
     4349        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     4350        psFree(md);
     4351        return false;
     4352    }
     4353    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, object->M2_y)) {
     4354        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     4355        psFree(md);
     4356        return false;
     4357    }
     4358    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, object->M2_z)) {
     4359        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     4360        psFree(md);
     4361        return false;
     4362    }
     4363    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, object->M2_tip)) {
     4364        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     4365        psFree(md);
     4366        return false;
     4367    }
     4368    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, object->M2_tilt)) {
     4369        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     4370        psFree(md);
     4371        return false;
     4372    }
     4373    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, object->env_temperature)) {
     4374        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     4375        psFree(md);
     4376        return false;
     4377    }
     4378    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, object->env_humidity)) {
     4379        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     4380        psFree(md);
     4381        return false;
     4382    }
     4383    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, object->env_wind_speed)) {
     4384        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     4385        psFree(md);
     4386        return false;
     4387    }
     4388    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, object->env_wind_dir)) {
     4389        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     4390        psFree(md);
     4391        return false;
     4392    }
     4393    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, object->pon_time)) {
     4394        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     4395        psFree(md);
     4396        return false;
     4397    }
    41584398    if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, object->user_1)) {
    41594399        psError(PS_ERR_UNKNOWN, false, "failed to add item user_1");
     
    43204560        return false;
    43214561    }
     4562    psF32 M1_x = psMetadataLookupF32(&status, md, "M1_x");
     4563    if (!status) {
     4564        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_x");
     4565        return false;
     4566    }
     4567    psF32 M1_y = psMetadataLookupF32(&status, md, "M1_y");
     4568    if (!status) {
     4569        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_y");
     4570        return false;
     4571    }
     4572    psF32 M1_z = psMetadataLookupF32(&status, md, "M1_z");
     4573    if (!status) {
     4574        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_z");
     4575        return false;
     4576    }
     4577    psF32 M1_tip = psMetadataLookupF32(&status, md, "M1_tip");
     4578    if (!status) {
     4579        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tip");
     4580        return false;
     4581    }
     4582    psF32 M1_tilt = psMetadataLookupF32(&status, md, "M1_tilt");
     4583    if (!status) {
     4584        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tilt");
     4585        return false;
     4586    }
     4587    psF32 M2_x = psMetadataLookupF32(&status, md, "M2_x");
     4588    if (!status) {
     4589        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_x");
     4590        return false;
     4591    }
     4592    psF32 M2_y = psMetadataLookupF32(&status, md, "M2_y");
     4593    if (!status) {
     4594        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_y");
     4595        return false;
     4596    }
     4597    psF32 M2_z = psMetadataLookupF32(&status, md, "M2_z");
     4598    if (!status) {
     4599        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_z");
     4600        return false;
     4601    }
     4602    psF32 M2_tip = psMetadataLookupF32(&status, md, "M2_tip");
     4603    if (!status) {
     4604        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tip");
     4605        return false;
     4606    }
     4607    psF32 M2_tilt = psMetadataLookupF32(&status, md, "M2_tilt");
     4608    if (!status) {
     4609        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tilt");
     4610        return false;
     4611    }
     4612    psF32 env_temperature = psMetadataLookupF32(&status, md, "env_temperature");
     4613    if (!status) {
     4614        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_temperature");
     4615        return false;
     4616    }
     4617    psF32 env_humidity = psMetadataLookupF32(&status, md, "env_humidity");
     4618    if (!status) {
     4619        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_humidity");
     4620        return false;
     4621    }
     4622    psF32 env_wind_speed = psMetadataLookupF32(&status, md, "env_wind_speed");
     4623    if (!status) {
     4624        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_wind_speed");
     4625        return false;
     4626    }
     4627    psF32 env_wind_dir = psMetadataLookupF32(&status, md, "env_wind_dir");
     4628    if (!status) {
     4629        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_wind_dir");
     4630        return false;
     4631    }
     4632    psF32 pon_time = psMetadataLookupF32(&status, md, "pon_time");
     4633    if (!status) {
     4634        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item pon_time");
     4635        return false;
     4636    }
    43224637    psF64 user_1 = psMetadataLookupF64(&status, md, "user_1");
    43234638    if (!status) {
     
    43614676    }
    43624677
    4363     return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, filelevel, workdir, reduction, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, user_1, user_2, user_3, user_4, user_5, object, solang, fault);
     4678    return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, filelevel, workdir, reduction, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, M1_x, M1_y, M1_z, M1_tip, M1_tilt, M2_x, M2_y, M2_z, M2_tip, M2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, pon_time, user_1, user_2, user_3, user_4, user_5, object, solang, fault);
    43644679}
    43654680psArray *rawExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     
    44734788static void rawImfileRowFree(rawImfileRow *object);
    44744789
    4475 rawImfileRow *rawImfileRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
     4790rawImfileRow *rawImfileRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
    44764791{
    44774792    rawImfileRow    *_object;
     
    45034818    _object->ccd_temp = ccd_temp;
    45044819    _object->posang = posang;
     4820    _object->M1_x = M1_x;
     4821    _object->M1_y = M1_y;
     4822    _object->M1_z = M1_z;
     4823    _object->M1_tip = M1_tip;
     4824    _object->M1_tilt = M1_tilt;
     4825    _object->M2_x = M2_x;
     4826    _object->M2_y = M2_y;
     4827    _object->M2_z = M2_z;
     4828    _object->M2_tip = M2_tip;
     4829    _object->M2_tilt = M2_tilt;
     4830    _object->env_temperature = env_temperature;
     4831    _object->env_humidity = env_humidity;
     4832    _object->env_wind_speed = env_wind_speed;
     4833    _object->env_wind_dir = env_wind_dir;
     4834    _object->pon_time = pon_time;
    45054835    _object->user_1 = user_1;
    45064836    _object->user_2 = user_2;
     
    46474977        return false;
    46484978    }
     4979    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, 0.0)) {
     4980        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     4981        psFree(md);
     4982        return false;
     4983    }
     4984    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, 0.0)) {
     4985        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     4986        psFree(md);
     4987        return false;
     4988    }
     4989    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, 0.0)) {
     4990        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     4991        psFree(md);
     4992        return false;
     4993    }
     4994    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, 0.0)) {
     4995        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     4996        psFree(md);
     4997        return false;
     4998    }
     4999    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, 0.0)) {
     5000        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     5001        psFree(md);
     5002        return false;
     5003    }
     5004    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, 0.0)) {
     5005        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     5006        psFree(md);
     5007        return false;
     5008    }
     5009    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, 0.0)) {
     5010        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     5011        psFree(md);
     5012        return false;
     5013    }
     5014    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, 0.0)) {
     5015        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     5016        psFree(md);
     5017        return false;
     5018    }
     5019    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, 0.0)) {
     5020        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     5021        psFree(md);
     5022        return false;
     5023    }
     5024    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, 0.0)) {
     5025        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5026        psFree(md);
     5027        return false;
     5028    }
     5029    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, 0.0)) {
     5030        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     5031        psFree(md);
     5032        return false;
     5033    }
     5034    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, 0.0)) {
     5035        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     5036        psFree(md);
     5037        return false;
     5038    }
     5039    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, 0.0)) {
     5040        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     5041        psFree(md);
     5042        return false;
     5043    }
     5044    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, 0.0)) {
     5045        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     5046        psFree(md);
     5047        return false;
     5048    }
     5049    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, 0.0)) {
     5050        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     5051        psFree(md);
     5052        return false;
     5053    }
    46495054    if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, 0.0)) {
    46505055        psError(PS_ERR_UNKNOWN, false, "failed to add item user_1");
     
    46955100}
    46965101
    4697 bool rawImfileInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
     5102bool rawImfileInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
    46985103{
    46995104    psMetadata *md = psMetadataAlloc();
     
    48105215    if (!psMetadataAdd(md, PS_LIST_TAIL, "posang", PS_DATA_F64, NULL, posang)) {
    48115216        psError(PS_ERR_UNKNOWN, false, "failed to add item posang");
     5217        psFree(md);
     5218        return false;
     5219    }
     5220    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, M1_x)) {
     5221        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     5222        psFree(md);
     5223        return false;
     5224    }
     5225    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, M1_y)) {
     5226        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     5227        psFree(md);
     5228        return false;
     5229    }
     5230    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, M1_z)) {
     5231        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     5232        psFree(md);
     5233        return false;
     5234    }
     5235    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, M1_tip)) {
     5236        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     5237        psFree(md);
     5238        return false;
     5239    }
     5240    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, M1_tilt)) {
     5241        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     5242        psFree(md);
     5243        return false;
     5244    }
     5245    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, M2_x)) {
     5246        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     5247        psFree(md);
     5248        return false;
     5249    }
     5250    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, M2_y)) {
     5251        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     5252        psFree(md);
     5253        return false;
     5254    }
     5255    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, M2_z)) {
     5256        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     5257        psFree(md);
     5258        return false;
     5259    }
     5260    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, M2_tip)) {
     5261        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     5262        psFree(md);
     5263        return false;
     5264    }
     5265    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, M2_tilt)) {
     5266        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5267        psFree(md);
     5268        return false;
     5269    }
     5270    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, env_temperature)) {
     5271        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     5272        psFree(md);
     5273        return false;
     5274    }
     5275    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, env_humidity)) {
     5276        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     5277        psFree(md);
     5278        return false;
     5279    }
     5280    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, env_wind_speed)) {
     5281        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     5282        psFree(md);
     5283        return false;
     5284    }
     5285    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, env_wind_dir)) {
     5286        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     5287        psFree(md);
     5288        return false;
     5289    }
     5290    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, pon_time)) {
     5291        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
    48125292        psFree(md);
    48135293        return false;
     
    48715351bool rawImfileInsertObject(psDB *dbh, rawImfileRow *object)
    48725352{
    4873     return rawImfileInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->tmp_class_id, object->class_id, object->uri, object->exp_type, object->filelevel, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->fault);
     5353    return rawImfileInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->tmp_class_id, object->class_id, object->uri, object->exp_type, object->filelevel, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->M1_x, object->M1_y, object->M1_z, object->M1_tip, object->M1_tilt, object->M2_x, object->M2_y, object->M2_z, object->M2_tip, object->M2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->fault);
    48745354}
    48755355
     
    50595539        return false;
    50605540    }
     5541    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, object->M1_x)) {
     5542        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
     5543        psFree(md);
     5544        return false;
     5545    }
     5546    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, object->M1_y)) {
     5547        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
     5548        psFree(md);
     5549        return false;
     5550    }
     5551    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, object->M1_z)) {
     5552        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
     5553        psFree(md);
     5554        return false;
     5555    }
     5556    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, object->M1_tip)) {
     5557        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
     5558        psFree(md);
     5559        return false;
     5560    }
     5561    if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, object->M1_tilt)) {
     5562        psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
     5563        psFree(md);
     5564        return false;
     5565    }
     5566    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, object->M2_x)) {
     5567        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
     5568        psFree(md);
     5569        return false;
     5570    }
     5571    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, object->M2_y)) {
     5572        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
     5573        psFree(md);
     5574        return false;
     5575    }
     5576    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, object->M2_z)) {
     5577        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
     5578        psFree(md);
     5579        return false;
     5580    }
     5581    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, object->M2_tip)) {
     5582        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
     5583        psFree(md);
     5584        return false;
     5585    }
     5586    if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, object->M2_tilt)) {
     5587        psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5588        psFree(md);
     5589        return false;
     5590    }
     5591    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_temperature", PS_DATA_F32, NULL, object->env_temperature)) {
     5592        psError(PS_ERR_UNKNOWN, false, "failed to add item env_temperature");
     5593        psFree(md);
     5594        return false;
     5595    }
     5596    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_humidity", PS_DATA_F32, NULL, object->env_humidity)) {
     5597        psError(PS_ERR_UNKNOWN, false, "failed to add item env_humidity");
     5598        psFree(md);
     5599        return false;
     5600    }
     5601    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_speed", PS_DATA_F32, NULL, object->env_wind_speed)) {
     5602        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_speed");
     5603        psFree(md);
     5604        return false;
     5605    }
     5606    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, object->env_wind_dir)) {
     5607        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     5608        psFree(md);
     5609        return false;
     5610    }
     5611    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, object->pon_time)) {
     5612        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     5613        psFree(md);
     5614        return false;
     5615    }
    50615616    if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, object->user_1)) {
    50625617        psError(PS_ERR_UNKNOWN, false, "failed to add item user_1");
     
    52185773        return false;
    52195774    }
     5775    psF32 M1_x = psMetadataLookupF32(&status, md, "M1_x");
     5776    if (!status) {
     5777        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_x");
     5778        return false;
     5779    }
     5780    psF32 M1_y = psMetadataLookupF32(&status, md, "M1_y");
     5781    if (!status) {
     5782        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_y");
     5783        return false;
     5784    }
     5785    psF32 M1_z = psMetadataLookupF32(&status, md, "M1_z");
     5786    if (!status) {
     5787        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_z");
     5788        return false;
     5789    }
     5790    psF32 M1_tip = psMetadataLookupF32(&status, md, "M1_tip");
     5791    if (!status) {
     5792        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tip");
     5793        return false;
     5794    }
     5795    psF32 M1_tilt = psMetadataLookupF32(&status, md, "M1_tilt");
     5796    if (!status) {
     5797        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tilt");
     5798        return false;
     5799    }
     5800    psF32 M2_x = psMetadataLookupF32(&status, md, "M2_x");
     5801    if (!status) {
     5802        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_x");
     5803        return false;
     5804    }
     5805    psF32 M2_y = psMetadataLookupF32(&status, md, "M2_y");
     5806    if (!status) {
     5807        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_y");
     5808        return false;
     5809    }
     5810    psF32 M2_z = psMetadataLookupF32(&status, md, "M2_z");
     5811    if (!status) {
     5812        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_z");
     5813        return false;
     5814    }
     5815    psF32 M2_tip = psMetadataLookupF32(&status, md, "M2_tip");
     5816    if (!status) {
     5817        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tip");
     5818        return false;
     5819    }
     5820    psF32 M2_tilt = psMetadataLookupF32(&status, md, "M2_tilt");
     5821    if (!status) {
     5822        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tilt");
     5823        return false;
     5824    }
     5825    psF32 env_temperature = psMetadataLookupF32(&status, md, "env_temperature");
     5826    if (!status) {
     5827        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_temperature");
     5828        return false;
     5829    }
     5830    psF32 env_humidity = psMetadataLookupF32(&status, md, "env_humidity");
     5831    if (!status) {
     5832        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_humidity");
     5833        return false;
     5834    }
     5835    psF32 env_wind_speed = psMetadataLookupF32(&status, md, "env_wind_speed");
     5836    if (!status) {
     5837        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_wind_speed");
     5838        return false;
     5839    }
     5840    psF32 env_wind_dir = psMetadataLookupF32(&status, md, "env_wind_dir");
     5841    if (!status) {
     5842        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item env_wind_dir");
     5843        return false;
     5844    }
     5845    psF32 pon_time = psMetadataLookupF32(&status, md, "pon_time");
     5846    if (!status) {
     5847        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item pon_time");
     5848        return false;
     5849    }
    52205850    psF64 user_1 = psMetadataLookupF64(&status, md, "user_1");
    52215851    if (!status) {
     
    52545884    }
    52555885
    5256     return rawImfileRowAlloc(exp_id, exp_name, camera, telescope, dateobs, tmp_class_id, class_id, uri, exp_type, filelevel, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, user_1, user_2, user_3, user_4, user_5, object, fault);
     5886    return rawImfileRowAlloc(exp_id, exp_name, camera, telescope, dateobs, tmp_class_id, class_id, uri, exp_type, filelevel, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, M1_x, M1_y, M1_z, M1_tip, M1_tilt, M2_x, M2_y, M2_z, M2_tip, M2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, pon_time, user_1, user_2, user_3, user_4, user_5, object, fault);
    52575887}
    52585888psArray *rawImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     
    2270423334static void flatcorrRunRowFree(flatcorrRunRow *object);
    2270523335
    22706 flatcorrRunRow *flatcorrRunRowAlloc(psS64 corr_id, const char *dvodb, const char *state, const char *workdir, const char *label)
     23336flatcorrRunRow *flatcorrRunRowAlloc(psS64 corr_id, const char *dvodb, const char *state, const char *workdir, const char *label, const char *stats)
    2270723337{
    2270823338    flatcorrRunRow  *_object;
     
    2271623346    _object->workdir = psStringCopy(workdir);
    2271723347    _object->label = psStringCopy(label);
     23348    _object->stats = psStringCopy(stats);
    2271823349
    2271923350    return _object;
     
    2272623357    psFree(object->workdir);
    2272723358    psFree(object->label);
     23359    psFree(object->stats);
    2272823360}
    2272923361
     
    2275623388        return false;
    2275723389    }
     23390    if (!psMetadataAdd(md, PS_LIST_TAIL, "stats", PS_DATA_STRING, NULL, "255")) {
     23391        psError(PS_ERR_UNKNOWN, false, "failed to add item stats");
     23392        psFree(md);
     23393        return false;
     23394    }
    2275823395
    2275923396    bool status = psDBCreateTable(dbh, FLATCORRRUN_TABLE_NAME, md);
     
    2276923406}
    2277023407
    22771 bool flatcorrRunInsert(psDB * dbh, psS64 corr_id, const char *dvodb, const char *state, const char *workdir, const char *label)
     23408bool flatcorrRunInsert(psDB * dbh, psS64 corr_id, const char *dvodb, const char *state, const char *workdir, const char *label, const char *stats)
    2277223409{
    2277323410    psMetadata *md = psMetadataAlloc();
     
    2279423431    if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, NULL, label)) {
    2279523432        psError(PS_ERR_UNKNOWN, false, "failed to add item label");
     23433        psFree(md);
     23434        return false;
     23435    }
     23436    if (!psMetadataAdd(md, PS_LIST_TAIL, "stats", PS_DATA_STRING, NULL, stats)) {
     23437        psError(PS_ERR_UNKNOWN, false, "failed to add item stats");
    2279623438        psFree(md);
    2279723439        return false;
     
    2282023462bool flatcorrRunInsertObject(psDB *dbh, flatcorrRunRow *object)
    2282123463{
    22822     return flatcorrRunInsert(dbh, object->corr_id, object->dvodb, object->state, object->workdir, object->label);
     23464    return flatcorrRunInsert(dbh, object->corr_id, object->dvodb, object->state, object->workdir, object->label, object->stats);
    2282323465}
    2282423466
     
    2291823560        return false;
    2291923561    }
     23562    if (!psMetadataAdd(md, PS_LIST_TAIL, "stats", PS_DATA_STRING, NULL, object->stats)) {
     23563        psError(PS_ERR_UNKNOWN, false, "failed to add item stats");
     23564        psFree(md);
     23565        return false;
     23566    }
    2292023567
    2292123568
     
    2295223599        return false;
    2295323600    }
    22954 
    22955     return flatcorrRunRowAlloc(corr_id, dvodb, state, workdir, label);
     23601    char* stats = psMetadataLookupPtr(&status, md, "stats");
     23602    if (!status) {
     23603        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item stats");
     23604        return false;
     23605    }
     23606
     23607    return flatcorrRunRowAlloc(corr_id, dvodb, state, workdir, label, stats);
    2295623608}
    2295723609psArray *flatcorrRunSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
  • trunk/ippdb/src/ippdb.h

    r15582 r15766  
    20232023    psF32           ccd_temp;
    20242024    psF64           posang;
     2025    psF32           M1_x;
     2026    psF32           M1_y;
     2027    psF32           M1_z;
     2028    psF32           M1_tip;
     2029    psF32           M1_tilt;
     2030    psF32           M2_x;
     2031    psF32           M2_y;
     2032    psF32           M2_z;
     2033    psF32           M2_tip;
     2034    psF32           M2_tilt;
     2035    psF32           env_temperature;
     2036    psF32           env_humidity;
     2037    psF32           env_wind_speed;
     2038    psF32           env_wind_dir;
     2039    psF32           pon_time;
    20252040    psF64           user_1;
    20262041    psF64           user_2;
     
    20622077    psF32           ccd_temp,
    20632078    psF64           posang,
     2079    psF32           M1_x,
     2080    psF32           M1_y,
     2081    psF32           M1_z,
     2082    psF32           M1_tip,
     2083    psF32           M1_tilt,
     2084    psF32           M2_x,
     2085    psF32           M2_y,
     2086    psF32           M2_z,
     2087    psF32           M2_tip,
     2088    psF32           M2_tilt,
     2089    psF32           env_temperature,
     2090    psF32           env_humidity,
     2091    psF32           env_wind_speed,
     2092    psF32           env_wind_dir,
     2093    psF32           pon_time,
    20642094    psF64           user_1,
    20652095    psF64           user_2,
     
    21222152    psF32           ccd_temp,
    21232153    psF64           posang,
     2154    psF32           M1_x,
     2155    psF32           M1_y,
     2156    psF32           M1_z,
     2157    psF32           M1_tip,
     2158    psF32           M1_tilt,
     2159    psF32           M2_x,
     2160    psF32           M2_y,
     2161    psF32           M2_z,
     2162    psF32           M2_tip,
     2163    psF32           M2_tilt,
     2164    psF32           env_temperature,
     2165    psF32           env_humidity,
     2166    psF32           env_wind_speed,
     2167    psF32           env_wind_dir,
     2168    psF32           pon_time,
    21242169    psF64           user_1,
    21252170    psF64           user_2,
     
    23082353    psF32           ccd_temp;
    23092354    psF64           posang;
     2355    psF32           M1_x;
     2356    psF32           M1_y;
     2357    psF32           M1_z;
     2358    psF32           M1_tip;
     2359    psF32           M1_tilt;
     2360    psF32           M2_x;
     2361    psF32           M2_y;
     2362    psF32           M2_z;
     2363    psF32           M2_tip;
     2364    psF32           M2_tilt;
     2365    psF32           env_temperature;
     2366    psF32           env_humidity;
     2367    psF32           env_wind_speed;
     2368    psF32           env_wind_dir;
     2369    psF32           pon_time;
    23102370    psF64           user_1;
    23112371    psF64           user_2;
     
    23462406    psF32           ccd_temp,
    23472407    psF64           posang,
     2408    psF32           M1_x,
     2409    psF32           M1_y,
     2410    psF32           M1_z,
     2411    psF32           M1_tip,
     2412    psF32           M1_tilt,
     2413    psF32           M2_x,
     2414    psF32           M2_y,
     2415    psF32           M2_z,
     2416    psF32           M2_tip,
     2417    psF32           M2_tilt,
     2418    psF32           env_temperature,
     2419    psF32           env_humidity,
     2420    psF32           env_wind_speed,
     2421    psF32           env_wind_dir,
     2422    psF32           pon_time,
    23482423    psF64           user_1,
    23492424    psF64           user_2,
     
    24052480    psF32           ccd_temp,
    24062481    psF64           posang,
     2482    psF32           M1_x,
     2483    psF32           M1_y,
     2484    psF32           M1_z,
     2485    psF32           M1_tip,
     2486    psF32           M1_tilt,
     2487    psF32           M2_x,
     2488    psF32           M2_y,
     2489    psF32           M2_z,
     2490    psF32           M2_tip,
     2491    psF32           M2_tilt,
     2492    psF32           env_temperature,
     2493    psF32           env_humidity,
     2494    psF32           env_wind_speed,
     2495    psF32           env_wind_dir,
     2496    psF32           pon_time,
    24072497    psF64           user_1,
    24082498    psF64           user_2,
     
    1111611206    char            *workdir;
    1111711207    char            *label;
     11208    char            *stats;
    1111811209} flatcorrRunRow;
    1111911210
     
    1112811219    const char      *state,
    1112911220    const char      *workdir,
    11130     const char      *label
     11221    const char      *label,
     11222    const char      *stats
    1113111223);
    1113211224
     
    1116211254    const char      *state,
    1116311255    const char      *workdir,
    11164     const char      *label
     11256    const char      *label,
     11257    const char      *stats
    1116511258);
    1116611259
  • trunk/ippdb/tests/alloc.c

    r15582 r15766  
    315315        rawExpRow       *object;
    316316
    317         object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16    );
     317        object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16    );
    318318
    319319        if (!object) {
     
    412412            exit(EXIT_FAILURE);
    413413        }
     414        if (!object->M1_x == 32.32) {
     415            psFree(object);
     416            exit(EXIT_FAILURE);
     417        }
     418        if (!object->M1_y == 32.32) {
     419            psFree(object);
     420            exit(EXIT_FAILURE);
     421        }
     422        if (!object->M1_z == 32.32) {
     423            psFree(object);
     424            exit(EXIT_FAILURE);
     425        }
     426        if (!object->M1_tip == 32.32) {
     427            psFree(object);
     428            exit(EXIT_FAILURE);
     429        }
     430        if (!object->M1_tilt == 32.32) {
     431            psFree(object);
     432            exit(EXIT_FAILURE);
     433        }
     434        if (!object->M2_x == 32.32) {
     435            psFree(object);
     436            exit(EXIT_FAILURE);
     437        }
     438        if (!object->M2_y == 32.32) {
     439            psFree(object);
     440            exit(EXIT_FAILURE);
     441        }
     442        if (!object->M2_z == 32.32) {
     443            psFree(object);
     444            exit(EXIT_FAILURE);
     445        }
     446        if (!object->M2_tip == 32.32) {
     447            psFree(object);
     448            exit(EXIT_FAILURE);
     449        }
     450        if (!object->M2_tilt == 32.32) {
     451            psFree(object);
     452            exit(EXIT_FAILURE);
     453        }
     454        if (!object->env_temperature == 32.32) {
     455            psFree(object);
     456            exit(EXIT_FAILURE);
     457        }
     458        if (!object->env_humidity == 32.32) {
     459            psFree(object);
     460            exit(EXIT_FAILURE);
     461        }
     462        if (!object->env_wind_speed == 32.32) {
     463            psFree(object);
     464            exit(EXIT_FAILURE);
     465        }
     466        if (!object->env_wind_dir == 32.32) {
     467            psFree(object);
     468            exit(EXIT_FAILURE);
     469        }
     470        if (!object->pon_time == 32.32) {
     471            psFree(object);
     472            exit(EXIT_FAILURE);
     473        }
    414474        if (!object->user_1 == 64.64) {
    415475            psFree(object);
     
    451511        rawImfileRow    *object;
    452512
    453         object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16    );
     513        object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16    );
    454514
    455515        if (!object) {
     
    548608            exit(EXIT_FAILURE);
    549609        }
     610        if (!object->M1_x == 32.32) {
     611            psFree(object);
     612            exit(EXIT_FAILURE);
     613        }
     614        if (!object->M1_y == 32.32) {
     615            psFree(object);
     616            exit(EXIT_FAILURE);
     617        }
     618        if (!object->M1_z == 32.32) {
     619            psFree(object);
     620            exit(EXIT_FAILURE);
     621        }
     622        if (!object->M1_tip == 32.32) {
     623            psFree(object);
     624            exit(EXIT_FAILURE);
     625        }
     626        if (!object->M1_tilt == 32.32) {
     627            psFree(object);
     628            exit(EXIT_FAILURE);
     629        }
     630        if (!object->M2_x == 32.32) {
     631            psFree(object);
     632            exit(EXIT_FAILURE);
     633        }
     634        if (!object->M2_y == 32.32) {
     635            psFree(object);
     636            exit(EXIT_FAILURE);
     637        }
     638        if (!object->M2_z == 32.32) {
     639            psFree(object);
     640            exit(EXIT_FAILURE);
     641        }
     642        if (!object->M2_tip == 32.32) {
     643            psFree(object);
     644            exit(EXIT_FAILURE);
     645        }
     646        if (!object->M2_tilt == 32.32) {
     647            psFree(object);
     648            exit(EXIT_FAILURE);
     649        }
     650        if (!object->env_temperature == 32.32) {
     651            psFree(object);
     652            exit(EXIT_FAILURE);
     653        }
     654        if (!object->env_humidity == 32.32) {
     655            psFree(object);
     656            exit(EXIT_FAILURE);
     657        }
     658        if (!object->env_wind_speed == 32.32) {
     659            psFree(object);
     660            exit(EXIT_FAILURE);
     661        }
     662        if (!object->env_wind_dir == 32.32) {
     663            psFree(object);
     664            exit(EXIT_FAILURE);
     665        }
     666        if (!object->pon_time == 32.32) {
     667            psFree(object);
     668            exit(EXIT_FAILURE);
     669        }
    550670        if (!object->user_1 == 64.64) {
    551671            psFree(object);
     
    24892609        flatcorrRunRow  *object;
    24902610
    2491         object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string"    );
     2611        object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string"    );
    24922612
    24932613        if (!object) {
     
    25122632        }
    25132633        if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {
     2634            psFree(object);
     2635            exit(EXIT_FAILURE);
     2636        }
     2637        if (strncmp(object->stats, "a string", MAX_STRING_LENGTH)) {
    25142638            psFree(object);
    25152639            exit(EXIT_FAILURE);
  • trunk/ippdb/tests/insert.c

    r15582 r15766  
    148148        }
    149149
    150         if (!rawExpInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16)) {
    151             exit(EXIT_FAILURE);
    152         }
    153 
    154         psDBCleanup(dbh);
    155     }
    156 
    157     {
    158         psDB            *dbh;
    159 
    160         dbh = psDBInit("localhost", "test", NULL, "test");
    161         if (!dbh) {
    162             exit(EXIT_FAILURE);
    163         }
    164 
    165         if (!rawImfileInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16)) {
     150        if (!rawExpInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16)) {
     151            exit(EXIT_FAILURE);
     152        }
     153
     154        psDBCleanup(dbh);
     155    }
     156
     157    {
     158        psDB            *dbh;
     159
     160        dbh = psDBInit("localhost", "test", NULL, "test");
     161        if (!dbh) {
     162            exit(EXIT_FAILURE);
     163        }
     164
     165        if (!rawImfileInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16)) {
    166166            exit(EXIT_FAILURE);
    167167        }
     
    763763        }
    764764
    765         if (!flatcorrRunInsert(dbh, -64, "a string", "a string", "a string", "a string")) {
     765        if (!flatcorrRunInsert(dbh, -64, "a string", "a string", "a string", "a string", "a string")) {
    766766            exit(EXIT_FAILURE);
    767767        }
  • trunk/ippdb/tests/insertobject.c

    r15582 r15766  
    212212        }
    213213
    214         object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);
     214        object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);
    215215        if (!object) {
    216216            exit(EXIT_FAILURE);
     
    234234        }
    235235
    236         object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);
     236        object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);
    237237        if (!object) {
    238238            exit(EXIT_FAILURE);
     
    11141114        }
    11151115
    1116         object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string");
     1116        object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string");
    11171117        if (!object) {
    11181118            exit(EXIT_FAILURE);
  • trunk/ippdb/tests/metadatafromobject.c

    r15582 r15766  
    387387        bool            status;
    388388
    389         object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);
     389        object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);
    390390        if (!object) {
    391391            exit(EXIT_FAILURE);
     
    489489            exit(EXIT_FAILURE);
    490490        }
     491        if (!psMetadataLookupF32(&status, md, "M1_x") == 32.32) {
     492            psFree(md);
     493            exit(EXIT_FAILURE);
     494        }
     495        if (!psMetadataLookupF32(&status, md, "M1_y") == 32.32) {
     496            psFree(md);
     497            exit(EXIT_FAILURE);
     498        }
     499        if (!psMetadataLookupF32(&status, md, "M1_z") == 32.32) {
     500            psFree(md);
     501            exit(EXIT_FAILURE);
     502        }
     503        if (!psMetadataLookupF32(&status, md, "M1_tip") == 32.32) {
     504            psFree(md);
     505            exit(EXIT_FAILURE);
     506        }
     507        if (!psMetadataLookupF32(&status, md, "M1_tilt") == 32.32) {
     508            psFree(md);
     509            exit(EXIT_FAILURE);
     510        }
     511        if (!psMetadataLookupF32(&status, md, "M2_x") == 32.32) {
     512            psFree(md);
     513            exit(EXIT_FAILURE);
     514        }
     515        if (!psMetadataLookupF32(&status, md, "M2_y") == 32.32) {
     516            psFree(md);
     517            exit(EXIT_FAILURE);
     518        }
     519        if (!psMetadataLookupF32(&status, md, "M2_z") == 32.32) {
     520            psFree(md);
     521            exit(EXIT_FAILURE);
     522        }
     523        if (!psMetadataLookupF32(&status, md, "M2_tip") == 32.32) {
     524            psFree(md);
     525            exit(EXIT_FAILURE);
     526        }
     527        if (!psMetadataLookupF32(&status, md, "M2_tilt") == 32.32) {
     528            psFree(md);
     529            exit(EXIT_FAILURE);
     530        }
     531        if (!psMetadataLookupF32(&status, md, "env_temperature") == 32.32) {
     532            psFree(md);
     533            exit(EXIT_FAILURE);
     534        }
     535        if (!psMetadataLookupF32(&status, md, "env_humidity") == 32.32) {
     536            psFree(md);
     537            exit(EXIT_FAILURE);
     538        }
     539        if (!psMetadataLookupF32(&status, md, "env_wind_speed") == 32.32) {
     540            psFree(md);
     541            exit(EXIT_FAILURE);
     542        }
     543        if (!psMetadataLookupF32(&status, md, "env_wind_dir") == 32.32) {
     544            psFree(md);
     545            exit(EXIT_FAILURE);
     546        }
     547        if (!psMetadataLookupF32(&status, md, "pon_time") == 32.32) {
     548            psFree(md);
     549            exit(EXIT_FAILURE);
     550        }
    491551        if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {
    492552            psFree(md);
     
    529589        bool            status;
    530590
    531         object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);
     591        object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);
    532592        if (!object) {
    533593            exit(EXIT_FAILURE);
     
    631691            exit(EXIT_FAILURE);
    632692        }
     693        if (!psMetadataLookupF32(&status, md, "M1_x") == 32.32) {
     694            psFree(md);
     695            exit(EXIT_FAILURE);
     696        }
     697        if (!psMetadataLookupF32(&status, md, "M1_y") == 32.32) {
     698            psFree(md);
     699            exit(EXIT_FAILURE);
     700        }
     701        if (!psMetadataLookupF32(&status, md, "M1_z") == 32.32) {
     702            psFree(md);
     703            exit(EXIT_FAILURE);
     704        }
     705        if (!psMetadataLookupF32(&status, md, "M1_tip") == 32.32) {
     706            psFree(md);
     707            exit(EXIT_FAILURE);
     708        }
     709        if (!psMetadataLookupF32(&status, md, "M1_tilt") == 32.32) {
     710            psFree(md);
     711            exit(EXIT_FAILURE);
     712        }
     713        if (!psMetadataLookupF32(&status, md, "M2_x") == 32.32) {
     714            psFree(md);
     715            exit(EXIT_FAILURE);
     716        }
     717        if (!psMetadataLookupF32(&status, md, "M2_y") == 32.32) {
     718            psFree(md);
     719            exit(EXIT_FAILURE);
     720        }
     721        if (!psMetadataLookupF32(&status, md, "M2_z") == 32.32) {
     722            psFree(md);
     723            exit(EXIT_FAILURE);
     724        }
     725        if (!psMetadataLookupF32(&status, md, "M2_tip") == 32.32) {
     726            psFree(md);
     727            exit(EXIT_FAILURE);
     728        }
     729        if (!psMetadataLookupF32(&status, md, "M2_tilt") == 32.32) {
     730            psFree(md);
     731            exit(EXIT_FAILURE);
     732        }
     733        if (!psMetadataLookupF32(&status, md, "env_temperature") == 32.32) {
     734            psFree(md);
     735            exit(EXIT_FAILURE);
     736        }
     737        if (!psMetadataLookupF32(&status, md, "env_humidity") == 32.32) {
     738            psFree(md);
     739            exit(EXIT_FAILURE);
     740        }
     741        if (!psMetadataLookupF32(&status, md, "env_wind_speed") == 32.32) {
     742            psFree(md);
     743            exit(EXIT_FAILURE);
     744        }
     745        if (!psMetadataLookupF32(&status, md, "env_wind_dir") == 32.32) {
     746            psFree(md);
     747            exit(EXIT_FAILURE);
     748        }
     749        if (!psMetadataLookupF32(&status, md, "pon_time") == 32.32) {
     750            psFree(md);
     751            exit(EXIT_FAILURE);
     752        }
    633753        if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {
    634754            psFree(md);
     
    28102930        bool            status;
    28112931
    2812         object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string");
     2932        object = flatcorrRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string");
    28132933        if (!object) {
    28142934            exit(EXIT_FAILURE);
     
    28382958        }
    28392959        if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) {
     2960            psFree(md);
     2961            exit(EXIT_FAILURE);
     2962        }
     2963        if (strncmp(psMetadataLookupPtr(&status, md, "stats"), "a string", MAX_STRING_LENGTH)) {
    28402964            psFree(md);
    28412965            exit(EXIT_FAILURE);
  • trunk/ippdb/tests/objectfrommetadata.c

    r15582 r15766  
    635635            exit(EXIT_FAILURE);
    636636        }
     637        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_x", 0, NULL, 32.32)) {
     638            psFree(md);
     639            exit(EXIT_FAILURE);
     640        }
     641        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_y", 0, NULL, 32.32)) {
     642            psFree(md);
     643            exit(EXIT_FAILURE);
     644        }
     645        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_z", 0, NULL, 32.32)) {
     646            psFree(md);
     647            exit(EXIT_FAILURE);
     648        }
     649        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_tip", 0, NULL, 32.32)) {
     650            psFree(md);
     651            exit(EXIT_FAILURE);
     652        }
     653        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_tilt", 0, NULL, 32.32)) {
     654            psFree(md);
     655            exit(EXIT_FAILURE);
     656        }
     657        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_x", 0, NULL, 32.32)) {
     658            psFree(md);
     659            exit(EXIT_FAILURE);
     660        }
     661        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_y", 0, NULL, 32.32)) {
     662            psFree(md);
     663            exit(EXIT_FAILURE);
     664        }
     665        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_z", 0, NULL, 32.32)) {
     666            psFree(md);
     667            exit(EXIT_FAILURE);
     668        }
     669        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_tip", 0, NULL, 32.32)) {
     670            psFree(md);
     671            exit(EXIT_FAILURE);
     672        }
     673        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_tilt", 0, NULL, 32.32)) {
     674            psFree(md);
     675            exit(EXIT_FAILURE);
     676        }
     677        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_temperature", 0, NULL, 32.32)) {
     678            psFree(md);
     679            exit(EXIT_FAILURE);
     680        }
     681        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_humidity", 0, NULL, 32.32)) {
     682            psFree(md);
     683            exit(EXIT_FAILURE);
     684        }
     685        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_wind_speed", 0, NULL, 32.32)) {
     686            psFree(md);
     687            exit(EXIT_FAILURE);
     688        }
     689        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_wind_dir", 0, NULL, 32.32)) {
     690            psFree(md);
     691            exit(EXIT_FAILURE);
     692        }
     693        if (!psMetadataAddF32(md, PS_LIST_TAIL, "pon_time", 0, NULL, 32.32)) {
     694            psFree(md);
     695            exit(EXIT_FAILURE);
     696        }
    637697        if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {
    638698            psFree(md);
     
    765825            exit(EXIT_FAILURE);
    766826        }
     827        if (!object->M1_x == 32.32) {
     828            psFree(object);
     829            exit(EXIT_FAILURE);
     830        }
     831        if (!object->M1_y == 32.32) {
     832            psFree(object);
     833            exit(EXIT_FAILURE);
     834        }
     835        if (!object->M1_z == 32.32) {
     836            psFree(object);
     837            exit(EXIT_FAILURE);
     838        }
     839        if (!object->M1_tip == 32.32) {
     840            psFree(object);
     841            exit(EXIT_FAILURE);
     842        }
     843        if (!object->M1_tilt == 32.32) {
     844            psFree(object);
     845            exit(EXIT_FAILURE);
     846        }
     847        if (!object->M2_x == 32.32) {
     848            psFree(object);
     849            exit(EXIT_FAILURE);
     850        }
     851        if (!object->M2_y == 32.32) {
     852            psFree(object);
     853            exit(EXIT_FAILURE);
     854        }
     855        if (!object->M2_z == 32.32) {
     856            psFree(object);
     857            exit(EXIT_FAILURE);
     858        }
     859        if (!object->M2_tip == 32.32) {
     860            psFree(object);
     861            exit(EXIT_FAILURE);
     862        }
     863        if (!object->M2_tilt == 32.32) {
     864            psFree(object);
     865            exit(EXIT_FAILURE);
     866        }
     867        if (!object->env_temperature == 32.32) {
     868            psFree(object);
     869            exit(EXIT_FAILURE);
     870        }
     871        if (!object->env_humidity == 32.32) {
     872            psFree(object);
     873            exit(EXIT_FAILURE);
     874        }
     875        if (!object->env_wind_speed == 32.32) {
     876            psFree(object);
     877            exit(EXIT_FAILURE);
     878        }
     879        if (!object->env_wind_dir == 32.32) {
     880            psFree(object);
     881            exit(EXIT_FAILURE);
     882        }
     883        if (!object->pon_time == 32.32) {
     884            psFree(object);
     885            exit(EXIT_FAILURE);
     886        }
    767887        if (!object->user_1 == 64.64) {
    768888            psFree(object);
     
    8951015            exit(EXIT_FAILURE);
    8961016        }
     1017        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_x", 0, NULL, 32.32)) {
     1018            psFree(md);
     1019            exit(EXIT_FAILURE);
     1020        }
     1021        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_y", 0, NULL, 32.32)) {
     1022            psFree(md);
     1023            exit(EXIT_FAILURE);
     1024        }
     1025        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_z", 0, NULL, 32.32)) {
     1026            psFree(md);
     1027            exit(EXIT_FAILURE);
     1028        }
     1029        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_tip", 0, NULL, 32.32)) {
     1030            psFree(md);
     1031            exit(EXIT_FAILURE);
     1032        }
     1033        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M1_tilt", 0, NULL, 32.32)) {
     1034            psFree(md);
     1035            exit(EXIT_FAILURE);
     1036        }
     1037        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_x", 0, NULL, 32.32)) {
     1038            psFree(md);
     1039            exit(EXIT_FAILURE);
     1040        }
     1041        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_y", 0, NULL, 32.32)) {
     1042            psFree(md);
     1043            exit(EXIT_FAILURE);
     1044        }
     1045        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_z", 0, NULL, 32.32)) {
     1046            psFree(md);
     1047            exit(EXIT_FAILURE);
     1048        }
     1049        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_tip", 0, NULL, 32.32)) {
     1050            psFree(md);
     1051            exit(EXIT_FAILURE);
     1052        }
     1053        if (!psMetadataAddF32(md, PS_LIST_TAIL, "M2_tilt", 0, NULL, 32.32)) {
     1054            psFree(md);
     1055            exit(EXIT_FAILURE);
     1056        }
     1057        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_temperature", 0, NULL, 32.32)) {
     1058            psFree(md);
     1059            exit(EXIT_FAILURE);
     1060        }
     1061        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_humidity", 0, NULL, 32.32)) {
     1062            psFree(md);
     1063            exit(EXIT_FAILURE);
     1064        }
     1065        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_wind_speed", 0, NULL, 32.32)) {
     1066            psFree(md);
     1067            exit(EXIT_FAILURE);
     1068        }
     1069        if (!psMetadataAddF32(md, PS_LIST_TAIL, "env_wind_dir", 0, NULL, 32.32)) {
     1070            psFree(md);
     1071            exit(EXIT_FAILURE);
     1072        }
     1073        if (!psMetadataAddF32(md, PS_LIST_TAIL, "pon_time", 0, NULL, 32.32)) {
     1074            psFree(md);
     1075            exit(EXIT_FAILURE);
     1076        }
    8971077        if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {
    8981078            psFree(md);
     
    10211201            exit(EXIT_FAILURE);
    10221202        }
     1203        if (!object->M1_x == 32.32) {
     1204            psFree(object);
     1205            exit(EXIT_FAILURE);
     1206        }
     1207        if (!object->M1_y == 32.32) {
     1208            psFree(object);
     1209            exit(EXIT_FAILURE);
     1210        }
     1211        if (!object->M1_z == 32.32) {
     1212            psFree(object);
     1213            exit(EXIT_FAILURE);
     1214        }
     1215        if (!object->M1_tip == 32.32) {
     1216            psFree(object);
     1217            exit(EXIT_FAILURE);
     1218        }
     1219        if (!object->M1_tilt == 32.32) {
     1220            psFree(object);
     1221            exit(EXIT_FAILURE);
     1222        }
     1223        if (!object->M2_x == 32.32) {
     1224            psFree(object);
     1225            exit(EXIT_FAILURE);
     1226        }
     1227        if (!object->M2_y == 32.32) {
     1228            psFree(object);
     1229            exit(EXIT_FAILURE);
     1230        }
     1231        if (!object->M2_z == 32.32) {
     1232            psFree(object);
     1233            exit(EXIT_FAILURE);
     1234        }
     1235        if (!object->M2_tip == 32.32) {
     1236            psFree(object);
     1237            exit(EXIT_FAILURE);
     1238        }
     1239        if (!object->M2_tilt == 32.32) {
     1240            psFree(object);
     1241            exit(EXIT_FAILURE);
     1242        }
     1243        if (!object->env_temperature == 32.32) {
     1244            psFree(object);
     1245            exit(EXIT_FAILURE);
     1246        }
     1247        if (!object->env_humidity == 32.32) {
     1248            psFree(object);
     1249            exit(EXIT_FAILURE);
     1250        }
     1251        if (!object->env_wind_speed == 32.32) {
     1252            psFree(object);
     1253            exit(EXIT_FAILURE);
     1254        }
     1255        if (!object->env_wind_dir == 32.32) {
     1256            psFree(object);
     1257            exit(EXIT_FAILURE);
     1258        }
     1259        if (!object->pon_time == 32.32) {
     1260            psFree(object);
     1261            exit(EXIT_FAILURE);
     1262        }
    10231263        if (!object->user_1 == 64.64) {
    10241264            psFree(object);
     
    44264666            exit(EXIT_FAILURE);
    44274667        }
     4668        if (!psMetadataAddStr(md, PS_LIST_TAIL, "stats", 0, NULL, "a string")) {
     4669            psFree(md);
     4670            exit(EXIT_FAILURE);
     4671        }
    44284672
    44294673        object = flatcorrRunObjectFromMetadata(md);
     
    44514695        }
    44524696        if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {
     4697            psFree(object);
     4698            exit(EXIT_FAILURE);
     4699        }
     4700        if (strncmp(object->stats, "a string", MAX_STRING_LENGTH)) {
    44534701            psFree(object);
    44544702            exit(EXIT_FAILURE);
Note: See TracChangeset for help on using the changeset viewer.