#ifndef DATA_STRUCTURE_H_GUARD_
#define DATA_STRUCTURE_H_GUARD_

#include "global-state.h"

void PUDS_Add_imagefile_by_path ( char * path );
void PUDS_Dispose ( void );
void PUDS_Reset_directories ( void );

void PUDS_Remove_imagefile_main ( Imagefile * im );
void PUDS_Remove_imagefile_group ( Imagefile * im );

void PUDS_Create_group ( Imagefile * im1, Imagefile * im2, size_t hashlen );
void PUDS_Add_to_group ( Imagefile * im, ImageGroup * grp );
void PUDS_Remove_group ( ImageGroup * grp );
void PUDS_Remove_group_only ( ImageGroup * grp );
unsigned PUDS_Get_valid_group_entries ( ImageGroup * grp, int leftcount, int rightcount );

#endif
