class MalwareFeature:
    'Base class for malware features'
    global_vars = []
    func_imports = []
    func_decl = []
    func_def = []
    func_call = []

    def __init__(self):
        pass

    def get_func_declarations(self):
        return self.func_decl

    def get_func_definitions(self):
        return self.func_def

    def get_global_variables(self):
        return self.global_vars

    def get_func_call(self):
        return self.func_call

class HelloFeature (MalwareFeature):
    'Subclass of MalwareFeature. Prints hello world to console'

    MalwareFeature.func_imports = ''
    MalwareFeature.global_vars = ['int a = 123;']
    MalwareFeature.func_decl = ['void printHello();']
    MalwareFeature.func_def = ['void printHello(){\r\n' \
        'printf("hello from python\\n");\r\n' \
        'printf("%d\\n", a);\r\n' \
        '}\r\n']
    MalwareFeature.func_call = ['printHello();\r\n']

    def __init__(self):
        pass
