1 #ifndef OPENMW_ESM_SNDG_H
2 #define OPENMW_ESM_SNDG_H
3 
4 #include <string>
5 
6 namespace ESM
7 {
8 
9 class ESMReader;
10 class ESMWriter;
11 
12 /*
13  * Sound generator. This describes the sounds a creature make.
14  */
15 
16 struct SoundGenerator
17 {
18     static unsigned int sRecordId;
19     /// Return a string descriptor for this record type. Currently used for debugging / error logs only.
getRecordTypeESM::SoundGenerator20     static std::string getRecordType() { return "SoundGenerator"; }
21 
22     enum Type
23     {
24         LeftFoot = 0,
25         RightFoot = 1,
26         SwimLeft = 2,
27         SwimRight = 3,
28         Moan = 4,
29         Roar = 5,
30         Scream = 6,
31         Land = 7
32     };
33 
34     // Type
35     int mType;
36 
37     std::string mId, mCreature, mSound;
38 
39     void load(ESMReader &esm, bool &isDeleted);
40     void save(ESMWriter &esm, bool isDeleted = false) const;
41 
42     void blank();
43 };
44 }
45 #endif
46