00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef NL_U_ENV_SOUND_H
00027 #define NL_U_ENV_SOUND_H
00028
00029 #include "nel/misc/types_nl.h"
00030 #include "nel/misc/vector.h"
00031
00032 namespace NLSOUND {
00033
00034
00035 class USource;
00036
00037
00063 class UEnvSound
00064 {
00065 public:
00066
00068 virtual void getPos( NLMISC::CVector& pos ) const = 0;
00070 virtual void setPos( const NLMISC::CVector& pos ) = 0;
00072 virtual void selectEnv( const char *tag, bool children_too=false ) = 0;
00074 virtual std::vector<UEnvSound*>& getChildren() = 0;
00075
00076
00078 virtual void play( bool children_too=false ) = 0;
00080 virtual void stop( bool children_too=false ) = 0;
00081
00082
00084 virtual ~UEnvSound() {}
00085
00086 protected:
00087
00089 UEnvSound() {}
00090
00091 };
00092
00093
00094 }
00095
00096
00097 #endif // NL_U_ENV_SOUND_H
00098
00099