GIRAFFE Pipeline Reference Manual

gilocalization.c

00001 /* $Id: gilocalization.c,v 1.2 2007/03/06 19:37:10 rpalsa Exp $
00002  *
00003  * This file is part of the GIRAFFE Pipeline
00004  * Copyright (C) 2002-2006 European Southern Observatory
00005  *
00006  * This program is free software; you can redistribute it and/or modify
00007  * it under the terms of the GNU General Public License as published by
00008  * the Free Software Foundation; either version 2 of the License, or
00009  * (at your option) any later version.
00010  *
00011  * This program is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  * GNU General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU General Public License
00017  * along with this program; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00019  */
00020 
00021 /*
00022  * $Author: rpalsa $
00023  * $Date: 2007/03/06 19:37:10 $
00024  * $Revision: 1.2 $
00025  * $Name: giraffe-2_8_8 $
00026  */
00027 
00028 #ifdef HAVE_CONFIG_H
00029 #  include <config.h>
00030 #endif
00031 
00032 #include <cxtypes.h>
00033 #include <cxmemory.h>
00034 
00035 #include "gilocalization.h"
00036 
00037 
00038 /*
00039  * @defgroup gilocalization Fiber Tracing Data Storage
00040  *
00041  * TBD
00042  */
00043 
00056 GiLocalization*
00057 giraffe_localization_new(void)
00058 {
00059 
00060     GiLocalization* self = cx_malloc(sizeof *self);
00061 
00062     self->locy = NULL;
00063     self->locw = NULL;
00064     self->locc = NULL;
00065     self->psf = NULL;
00066 
00067     return self;
00068 
00069 }
00070 
00071 
00089 GiLocalization*
00090 giraffe_localization_create(GiImage* locy, GiImage* locw, GiTable* locc,
00091                             GiPsfData* psf)
00092 {
00093 
00094     GiLocalization* self = giraffe_localization_new();
00095 
00096 
00097     if (locy != NULL) {
00098         self->locy = locy;
00099     }
00100 
00101     if (locw != NULL) {
00102         self->locw = locw;
00103     }
00104 
00105     if (locc != NULL) {
00106         self->locc = locc;
00107     }
00108 
00109     if (psf != NULL) {
00110         self->psf = psf;
00111     }
00112 
00113     return self;
00114 
00115 }
00116 
00117 
00134 void
00135 giraffe_localization_delete(GiLocalization* localization)
00136 {
00137 
00138     if (localization != NULL) {
00139         cx_free(localization);
00140     }
00141 
00142     return;
00143 
00144 }
00145 
00146 
00160 void
00161 giraffe_localization_destroy(GiLocalization* localization)
00162 {
00163 
00164     if (localization != NULL) {
00165 
00166         if (localization->locy != NULL) {
00167             giraffe_image_delete(localization->locy);
00168             localization->locy = NULL;
00169         }
00170 
00171         if (localization->locw != NULL) {
00172             giraffe_image_delete(localization->locw);
00173             localization->locw = NULL;
00174         }
00175 
00176         if (localization->locc != NULL) {
00177             giraffe_table_delete(localization->locc);
00178             localization->locc = NULL;
00179         }
00180 
00181         if (localization->psf != NULL) {
00182             giraffe_psfdata_delete(localization->psf);
00183             localization->psf = NULL;
00184         }
00185 
00186         cx_free(localization);
00187     }
00188 
00189     return;
00190 
00191 }

This file is part of the GIRAFFE Pipeline Reference Manual 2.8.8.
Documentation copyright © 2002-2006 European Southern Observatory.
Generated on Fri Mar 4 10:50:27 2011 by doxygen 1.6.3 written by Dimitri van Heesch, © 1997-2004