LibXM7
Enumerations
libXM7 definitions and types.

Enumerations

enum  XM7_Error {
  XM7_NO_ERROR = 0x00 ,
  XM7_ERR_NOT_A_VALID_MODULE = 0x01 ,
  XM7_ERR_UNKNOWN_MODULE_VERSION = 0x02 ,
  XM7_ERR_UNSUPPORTED_NUMBER_OF_CHANNELS = 0x03 ,
  XM7_ERR_UNSUPPORTED_PATTERN_HEADER = 0x08 ,
  XM7_ERR_INCOMPLETE_PATTERN = 0x09 ,
  XM7_ERR_UNSUPPORTED_INSTRUMENT_HEADER = 0x10 ,
  XM7_ERR_NOT_ENOUGH_MEMORY = 0x100
}
 List of the error codes for XM7_LoadXM() and XM7_LoadMOD(). More...
 
enum  XM7_PanningDisplacementStyles {
  XM7_HARD_PANNING_DISPLACEMENT = 0 ,
  XM7_MONO_PANNING_DISPLACEMENT = 64 ,
  XM7_DEFAULT_PANNING_DISPLACEMENT = 42
}
 Panning displacement styles. More...
 
enum  XM7_PanningStyles {
  XM7_PANNING_TYPE_NORMAL = 0x00 ,
  XM7_PANNING_TYPE_AMIGA = 0x01
}
 Panning styles. More...
 
enum  XM7_ReplayStyles {
}
 Replay style flags. More...
 

Detailed Description

Enumeration Type Documentation

◆ XM7_Error

enum XM7_Error

List of the error codes for XM7_LoadXM() and XM7_LoadMOD().

They are all fatal errors; the loading will be interrupted and it won't be possible to play the module. The XM7_UnloadXM() function (or its alias XM7_UnloadMOD()) should be called anyway to free the already allocated memory when the error code is greater than 0x07 ( XM7_ERR_UNSUPPORTED_PATTERN_HEADER, XM7_ERR_INCOMPLETE_PATTERN, XM7_ERR_UNSUPPORTED_INSTRUMENT_HEADER and XM7_ERR_NOT_ENOUGH_MEMORY)

Enumerator
XM7_NO_ERROR 

No error.

XM7_ERR_NOT_A_VALID_MODULE 

Not a valid module.

XM7_ERR_UNKNOWN_MODULE_VERSION 

Unknown module version.

XM7_ERR_UNSUPPORTED_NUMBER_OF_CHANNELS 

Unsupported number of channels.

XM7_ERR_UNSUPPORTED_PATTERN_HEADER 

Unsupported pattern header.

XM7_ERR_INCOMPLETE_PATTERN 

Incomplete pattern.

XM7_ERR_UNSUPPORTED_INSTRUMENT_HEADER 

Unsupported instrument header.

XM7_ERR_NOT_ENOUGH_MEMORY 

Not enough memory to allocate internal player structures.

◆ XM7_PanningDisplacementStyles

Panning displacement styles.

Enumerator
XM7_HARD_PANNING_DISPLACEMENT 

The panning as it was meant on Amiga.

XM7_MONO_PANNING_DISPLACEMENT 

All the channels will be centered.

XM7_DEFAULT_PANNING_DISPLACEMENT 

Default. Panning mix: 1/3 of the left channels volume goes to the right speaker and 1/3 of the right channels volume goes to the left speaker. Quite common setting among MOD players. 42 = ~127/3 = panning 1/3 + 2/3.

◆ XM7_PanningStyles

Panning styles.

Enumerator
XM7_PANNING_TYPE_NORMAL 

Panning will be driven by the module. Default for XMs.

XM7_PANNING_TYPE_AMIGA 

Panning will be driven by the channel number. Default for MODs.

◆ XM7_ReplayStyles

Replay style flags.

Enumerator
XM7_REPLAY_STYLE_FT2 

Alias of XM7_REPLAY_STYLE_XM_PLAYER. The default for XM modules.

XM7_REPLAY_STYLE_PT 

The default for MOD modules.