'Get the classes of the type we want from all modules found
in the directory that defines this class.'

def get_all_classes(self):

    classes = []
    for (dirpath, dirnames, filenames) in os.walk(self.path):
        relpath = os.path.relpath(dirpath, self.path)
        if (relpath == '.'):
            relpkg = ''
        else:
            relpkg = ('.%s' % '.'.join(relpath.split(os.sep)))
        for fname in filenames:
            (root, ext) = os.path.splitext(fname)
            if ((ext != '.py') or (root == '__init__')):
                continue
            module_name = ('%s%s.%s' % (self.package, relpkg, root))
            mod_classes = self._get_classes_from_module(module_name)
            classes.extend(mod_classes)
    return classes
