00001 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 00002 /* vim:set sw=2 sts=2 et cin: */ 00003 /* 00004 * This file is part of the MUSE Instrument Pipeline 00005 * Copyright (C) 2008-2012 European Southern Observatory 00006 * 00007 * This program is free software; you can redistribute it and/or modify 00008 * it under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation; either version 2 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * This program is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with this program; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00020 */ 00021 00022 #ifndef MUSE_IMAGELIST_H 00023 #define MUSE_IMAGELIST_H 00024 00025 #include <cpl.h> 00026 #include "muse_artifacts.h" 00027 #include "muse_image.h" 00028 00029 /*----------------------------------------------------------------------------* 00030 * Special variable types * 00031 *----------------------------------------------------------------------------*/ 00032 00036 /*----------------------------------------------------------------------------*/ 00040 /*----------------------------------------------------------------------------*/ 00041 typedef struct { 00047 muse_image **list; 00048 00050 unsigned int size; 00051 } muse_imagelist; 00052 00055 /*----------------------------------------------------------------------------* 00056 * Function prototypes * 00057 *----------------------------------------------------------------------------*/ 00058 muse_imagelist *muse_imagelist_new(void); 00059 void muse_imagelist_delete(muse_imagelist *); 00060 muse_image *muse_imagelist_get(muse_imagelist *, unsigned int); 00061 cpl_error_code muse_imagelist_set(muse_imagelist *, muse_image *, unsigned int); 00062 muse_image *muse_imagelist_unset(muse_imagelist *, unsigned int); 00063 int muse_imagelist_is_uniform(muse_imagelist *); 00064 unsigned int muse_imagelist_get_size(muse_imagelist *); 00065 void muse_imagelist_dump_statistics(muse_imagelist *); 00066 cpl_error_code muse_imagelist_scale_exptime(muse_imagelist *); 00067 cpl_bivector *muse_imagelist_compute_ron(muse_imagelist *, int, int); 00068 00069 #endif /* MUSE_IMAGELIST_H */
1.6.1