Program: gdcm
Module: $RCSfile: gdcmSerieHelper.h,v $
Language: C++
- Date: $Date: 2005/11/28 16:31:23 $
- Version: $Revision: 1.32 $
+ Date: $Date: 2006/01/18 15:25:07 $
+ Version: $Revision: 1.36 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
{ return (*ItFileSetHt).first; }
/// All the following allow user to restrict DICOM file to be part
/// of a particular serie
+ /// \todo : find a trick to allow user to say the retrictetons are ored
+ /// (not only anded)
+ /// ex : keep the images whose SerieNumber is 101 or 102 or 103.
void AddRestriction(TagKey const &key, std::string const &value, int op);
+ void AddRestriction(uint16_t group, uint16_t elem, std::string const &value,
+ int op);
/// \brief Use additional series information such as ProtocolName
/// and SeriesName to identify when a single SeriesUID contains
void SetUseSeriesDetails( bool useSeriesDetails )
{ m_UseSeriesDetails = useSeriesDetails;}
bool GetUseSeriesDetails( ){ return m_UseSeriesDetails; }
-
- // \brief Create a string that uniquely identifies a series. By default
- // uses the SeriesUID. If UseSeriesDetails(true) has been called,
- // then additional identifying information is used.
+
+ void AddSeriesDetail(uint16_t group, uint16_t elem, bool convert);
+
std::string CreateUniqueSeriesIdentifier( File * inFile );
-
+
+ std::string CreateUserDefinedFileIdentifier( File * inFile );
/**
* \brief Sets the LoadMode as a boolean string.
typedef std::vector<Rule> SerieRestrictions;
SerieRestrictions Restrictions;
- // New style for (extented) Rules (Moreover old one doesn't compile)
+ // New style for (extented) Rules
typedef struct {
uint16_t group;
uint16_t elem;
} ExRule;
typedef std::vector<ExRule> SerieExRestrictions;
SerieExRestrictions ExRestrictions;
+
+ typedef struct {
+ uint16_t group;
+ uint16_t elem;
+ bool convert;
+ } ExDetail;
+ typedef std::vector<ExDetail> SeriesExDetails;
+ SeriesExDetails ExDetails;
+
bool m_UseSeriesDetails;
/// \brief Bit string integer (each one considered as a boolean)
/// he may supply his own comparison function.
BOOL_FUNCTION_PFILE_PFILE_POINTER UserLessThanFunction;
+ void Sort(FileList *fileList, bool (*pt2Func)( File *file1, File *file2) );
};
} // end namespace gdcm