/**
 * @class       com.nid.sound.channelState
 * @author      NidiNiam (a.k.a. Fernando Sánchez)
 * @version     0.1
 * @description Enumeration class for mcChannel states
 * @usage       <pre>channelState.channelStateValue;</pre>
 * @param       none  -- no class input parameters.
 * -----------------------------------------------
 * Latest update: July 01, 2008
 * -----------------------------------------------
 * AS2 version 2008, NidiNiam [nidiniam@gmail.com]
 * -----------------------------------------------
**/
class com.nid.sound.channelState {
	//Vars
	private var _name:String;
	//Constructor
	private function channelState($name:String) {
		_name = $name;
	}
	//getters
	public function get name():String { return _name; }
	//static values
	public static var IS_UNDEFINED:channelState = new channelState("UNDEFINED"); 	//IS_STOPPED + no file ref or queue
	public static var IS_ERROR:channelState = new channelState("ERROR");			//Errors: Audio reference not valid (and no more valid references in queue if queued)
	public static var IS_LOADING:channelState = new channelState("LOADING");		//Preloading,  no streaming
	public static var IS_LOADED:channelState = new channelState("LOADED");			//Preload finished, not playing
	public static var IS_PAUSED:channelState = new channelState("PAUSED");
	public static var IS_PLAYING:channelState = new channelState("PLAYING");
	public static var IS_STOPPED:channelState = new channelState("STOPPED");		//Sound stopped and queue unfinished or Loop mode on
	public static var IS_WAITING:channelState = new channelState("WAITING");		//Object is between states (example: changing audio content) 
	public static var IS_COMPLETED:channelState = new channelState("COMPLETED");	//single file or queue finished (& not looping!)
}
