/[svn]/linuxsampler/trunk/src/audiodriver/AudioOutputDeviceAlsa.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/audiodriver/AudioOutputDeviceAlsa.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 173 by capela, Wed Jun 23 18:54:08 2004 UTC revision 174 by senkov, Tue Jul 6 03:27:38 2004 UTC
# Line 40  namespace LinuxSampler { Line 40  namespace LinuxSampler {
40       */       */
41      class AudioOutputDeviceAlsa : public AudioOutputDevice, protected Thread {      class AudioOutputDeviceAlsa : public AudioOutputDevice, protected Thread {
42          public:          public:
43              AudioOutputDeviceAlsa(std::map<String,String> Parameters);              AudioOutputDeviceAlsa(std::map<String,DeviceCreationParameter*> Parameters);
44              ~AudioOutputDeviceAlsa();              ~AudioOutputDeviceAlsa();
45    
46              // derived abstract methods from class 'AudioOutputDevice'              // derived abstract methods from class 'AudioOutputDevice'
# Line 53  namespace LinuxSampler { Line 53  namespace LinuxSampler {
53    
54              virtual String Driver();              virtual String Driver();
55    
56                static String Name();
57    
58              static String Description();              static String Description();
59              static String Version();              static String Version();
60    
             static std::map<String,DeviceCreationParameter*> AvailableParameters();  
   
61              class ParameterCard : public DeviceCreationParameterString {              class ParameterCard : public DeviceCreationParameterString {
62                  public:                  public:
63                      ParameterCard(AudioOutputDevice* pDevice) { this->pDevice = pDevice; InitWithDefault();}                      ParameterCard( void ) : DeviceCreationParameterString ()                              { InitWithDefault();                                             }
64                      ParameterCard(AudioOutputDevice* pDevice, String card) throw (LinuxSamplerException) : DeviceCreationParameterString(card) { this->pDevice = pDevice; }                      ParameterCard( String s ) : DeviceCreationParameterString (s)                         {}
65                      virtual String Description()                                                          { return "Sound card to be used";                                }                      virtual String Description()                                                          { return "Sound card to be used";                                }
66                      virtual bool   Fix()                                                                  { return true;                                                   }                      virtual bool   Fix()                                                                  { return true;                                                   }
67                      virtual bool   Mandatory()                                                            { return false;                                                  }                      virtual bool   Mandatory()                                                            { return false;                                                  }
# Line 69  namespace LinuxSampler { Line 69  namespace LinuxSampler {
69                      virtual optional<String>    Default(std::map<String,String> Parameters)               { return "0,0"; /* first card by default */                      }                      virtual optional<String>    Default(std::map<String,String> Parameters)               { return "0,0"; /* first card by default */                      }
70                      virtual std::vector<String> PossibilitiesAsString(std::map<String,String> Parameters) { return std::vector<String>(); /*TODO: return possible cards*/  }                      virtual std::vector<String> PossibilitiesAsString(std::map<String,String> Parameters) { return std::vector<String>(); /*TODO: return possible cards*/  }
71                      virtual void                OnSetValue(String s) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */                       }                      virtual void                OnSetValue(String s) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */                       }
72                  protected:                      static String Name( void ) { return "card"; }
                     AudioOutputDevice* pDevice;  
73              };              };
74    
75              class ParameterFragments : public DeviceCreationParameterInt {              class ParameterFragments : public DeviceCreationParameterInt {
76                  public:                  public:
77                      ParameterFragments(AudioOutputDevice* pDevice) { this->pDevice = pDevice; InitWithDefault();}                      ParameterFragments( void ) : DeviceCreationParameterInt ()                      { InitWithDefault();                                  }
78                      ParameterFragments(AudioOutputDevice* pDevice, String val) throw (LinuxSamplerException) : DeviceCreationParameterInt(val) { this->pDevice = pDevice; }                      ParameterFragments( String s ) : DeviceCreationParameterInt (s)                 {}
79                      virtual String Description()                                                    { return "Number of buffer fragments";                }                      virtual String Description()                                                    { return "Number of buffer fragments";                }
80                      virtual bool   Fix()                                                            { return true;                                        }                      virtual bool   Fix()                                                            { return true;                                        }
81                      virtual bool   Mandatory()                                                      { return false;                                       }                      virtual bool   Mandatory()                                                      { return false;                                       }
# Line 86  namespace LinuxSampler { Line 85  namespace LinuxSampler {
85                      virtual optional<int>    RangeMaxAsInt(std::map<String,String> Parameters)      { return optional<int>::nothing;                      }                      virtual optional<int>    RangeMaxAsInt(std::map<String,String> Parameters)      { return optional<int>::nothing;                      }
86                      virtual std::vector<int> PossibilitiesAsInt(std::map<String,String> Parameters) { return std::vector<int>();                          }                      virtual std::vector<int> PossibilitiesAsInt(std::map<String,String> Parameters) { return std::vector<int>();                          }
87                      virtual void             OnSetValue(int i) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */            }                      virtual void             OnSetValue(int i) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */            }
88                  protected:                      static String Name( void ) { return "fragments"; }
                     AudioOutputDevice* pDevice;  
89              };              };
90    
91              class ParameterFragmentSize : public DeviceCreationParameterInt {              class ParameterFragmentSize : public DeviceCreationParameterInt {
92                  public:                  public:
93                      ParameterFragmentSize(AudioOutputDevice* pDevice) { this->pDevice = pDevice; InitWithDefault();}                      ParameterFragmentSize( void ) : DeviceCreationParameterInt ()                   { InitWithDefault();                                  }
94                      ParameterFragmentSize(AudioOutputDevice* pDevice, String val) throw (LinuxSamplerException) : DeviceCreationParameterInt(val) { this->pDevice = pDevice; }                      ParameterFragmentSize( String s ) : DeviceCreationParameterInt (s)              {}
95                      virtual String Description()                                                    { return "Size of each buffer fragment";              }                      virtual String Description()                                                    { return "Size of each buffer fragment";              }
96                      virtual bool   Fix()                                                            { return true;                                        }                      virtual bool   Fix()                                                            { return true;                                        }
97                      virtual bool   Mandatory()                                                      { return false;                                       }                      virtual bool   Mandatory()                                                      { return false;                                       }
# Line 103  namespace LinuxSampler { Line 101  namespace LinuxSampler {
101                      virtual optional<int>    RangeMaxAsInt(std::map<String,String> Parameters)      { return optional<int>::nothing;                      }                      virtual optional<int>    RangeMaxAsInt(std::map<String,String> Parameters)      { return optional<int>::nothing;                      }
102                      virtual std::vector<int> PossibilitiesAsInt(std::map<String,String> Parameters) { return std::vector<int>();                          }                      virtual std::vector<int> PossibilitiesAsInt(std::map<String,String> Parameters) { return std::vector<int>();                          }
103                      virtual void             OnSetValue(int i) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */            }                      virtual void             OnSetValue(int i) throw (LinuxSamplerException)        { /* not posssible, as parameter is fix */            }
104                  protected:                      static String Name( void ) { return "fragmentsize"; }
                     AudioOutputDevice* pDevice;  
105              };              };
106    
107          protected:          protected:
108              int Main();  ///< Implementation of virtual method from class Thread              int Main();  ///< Implementation of virtual method from class Thread
             //AudioOutputDeviceAlsa(uint Channels = 2, uint Samplerate = 44100, uint Fragments = 2, uint FragmentSize = 128, String Card = "0,0");  
109    
             std::map<String,DeviceCreationParameter*> CreateParameters(std::map<String,String> Parameters);  
110          private:          private:
111              uint                 uiAlsaChannels;              uint                 uiAlsaChannels;
112              uint                 uiSamplerate;              uint                 uiSamplerate;

Legend:
Removed from v.173  
changed lines
  Added in v.174

  ViewVC Help
Powered by ViewVC