1 #include "abstract_class.h"
2 
3 #if GOLDEN_PARAMETER_TYPE_DIFF
4 #define BP_PARAMETER_TYPE int
5 #else
6 #define BP_PARAMETER_TYPE float
7 #endif
8 
9 #if GOLDEN_EQUAL_BUILTIN_POINTER_TYPE_DIFF
10 #define EQ_POINTER_RETURN_TYPE unsigned char *
11 #else
12 #define EQ_POINTER_RETURN_TYPE unsigned int *
13 #endif
14 
15 class HighVolumeSpeaker : public SuperSpeaker {
16  public:
17   virtual void Speak() override;
18   virtual LISTEN_RETURN_TYPE Listen() override;
19   HighVolumeSpeaker *BadPractice(BP_PARAMETER_TYPE id);
20 #if GOLDEN_ADD_FUNCTION
21   int AddedFunction();
22 #endif
23 #if GOLDEN_ADD_GLOBVAR
24 #if GOLDEN_ADD_GLOBVAR_PRIVATE
25  private:
26 #endif
27   static int global_unprotected_id;
28 #endif
29 };
30