Public Types | Public Member Functions | Static Public Member Functions | Data Fields | Static Public Attributes

BaseSet< T, Tnum_files, Tsearch_in_tars > Struct Template Reference

Information about a single base set. More...

#include <base_media_base.h>

Public Types

typedef SmallMap< const char
*, const char * > 
TranslatedStrings

Public Member Functions

 ~BaseSet ()
 Free everything we allocated.
int GetNumMissing () const
 Get the number of missing files.
int GetNumInvalid () const
 Get the number of invalid files.
bool FillSetDetails (IniFile *ini, const char *path, const char *full_filename, bool allow_empty_filename=true)
 Read the set information from a loaded ini.
const char * GetDescription (const char *isocode=NULL) const
 Get the description for the given ISO code.
const char * GetTextfile (TextfileType type) const
 Search a textfile file next to this base media.

Static Public Member Functions

static MD5File::ChecksumResult CheckMD5 (const MD5File *file, Subdirectory subdir)
 Calculate and check the MD5 hash of the supplied file.

Data Fields

const char * name
 The name of the base set.
TranslatedStrings description
 Description of the base set.
uint32 shortname
 Four letter short variant of the name.
uint32 version
 The version of this base set.
bool fallback
 This set is a fallback set, i.e. it should be used only as last resort.
MD5File files [NUM_FILES]
 All files part of this set.
uint found_files
 Number of the files that could be found.
uint valid_files
 Number of the files that could be found and are valid.
T * next
 The next base set in this list.

Static Public Attributes

static const size_t NUM_FILES = Tnum_files
 Number of files in this set.
static const bool SEARCH_IN_TARS = Tsearch_in_tars
 Whether to search in the tars or not.
static const char *const * file_names = _graphics_file_names
 Internal names of the files in this set.

Detailed Description

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
struct BaseSet< T, Tnum_files, Tsearch_in_tars >

Information about a single base set.

Template Parameters:
T the real class we're going to be
Tnum_files the number of files in the set
Tsearch_in_tars whether to search in the tars or not

Definition at line 48 of file base_media_base.h.


Member Function Documentation

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
static MD5File::ChecksumResult BaseSet< T, Tnum_files, Tsearch_in_tars >::CheckMD5 ( const MD5File file,
Subdirectory  subdir 
) [inline, static]

Calculate and check the MD5 hash of the supplied file.

Parameters:
file The file get the hash of.
subdir The sub directory to get the files from.
Returns:
  • CR_MATCH if the MD5 hash matches
  • CR_MISMATCH if the MD5 does not match
  • CR_NO_FILE if the file misses

Reimplemented in GraphicsSet.

Definition at line 144 of file base_media_base.h.

template<class T , size_t Tnum_files, bool Tsearch_in_tars>
bool BaseSet< T, Tnum_files, Tsearch_in_tars >::FillSetDetails ( IniFile ini,
const char *  path,
const char *  full_filename,
bool  allow_empty_filename = true 
)
template<class T, size_t Tnum_files, bool Tsearch_in_tars>
const char* BaseSet< T, Tnum_files, Tsearch_in_tars >::GetDescription ( const char *  isocode = NULL  )  const [inline]

Get the description for the given ISO code.

It falls back to the first two characters of the ISO code in case no match could be made with the full ISO code. If even then the matching fails the default is returned.

Parameters:
isocode the isocode to search for
Returns:
the description

Definition at line 119 of file base_media_base.h.

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
int BaseSet< T, Tnum_files, Tsearch_in_tars >::GetNumInvalid (  )  const [inline]

Get the number of invalid files.

Note:
a missing file is invalid too!
Returns:
the number

Definition at line 104 of file base_media_base.h.

Referenced by CheckExternalFiles(), GameOptionsWindow::OnInvalidateData(), and GameOptionsWindow::UpdateWidgetSize().

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
int BaseSet< T, Tnum_files, Tsearch_in_tars >::GetNumMissing (  )  const [inline]

Get the number of missing files.

Returns:
the number

Definition at line 94 of file base_media_base.h.

Referenced by GameOptionsWindow::OnInvalidateData().

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
const char* BaseSet< T, Tnum_files, Tsearch_in_tars >::GetTextfile ( TextfileType  type  )  const [inline]

Search a textfile file next to this base media.

Parameters:
type The type of the textfile to search for.
Returns:
The filename for the textfile, NULL otherwise.

Definition at line 154 of file base_media_base.h.

Referenced by BaseSet< GraphicsSet, MAX_GFT, true >::GetTextfile().


Field Documentation

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
const char *const * BaseSet< T, Tnum_files, Tsearch_in_tars >::file_names = _graphics_file_names [static]

Internal names of the files in this set.

Implementation.

Definition at line 58 of file base_media_base.h.

template<class T, size_t Tnum_files, bool Tsearch_in_tars>
const bool BaseSet< T, Tnum_files, Tsearch_in_tars >::SEARCH_IN_TARS = Tsearch_in_tars [static]

Whether to search in the tars or not.

Definition at line 55 of file base_media_base.h.


The documentation for this struct was generated from the following files: