The hidl-gen Java backend now supports structures (NOT unions) and types.hal

files.

Bug: 30575790
Change-Id: I6461235a1c469ce1bdb279bfa3d531113c5788f9
diff --git a/Scope.h b/Scope.h
index 5a90abe..ca3d565 100644
--- a/Scope.h
+++ b/Scope.h
@@ -31,7 +31,9 @@
     std::string getJavaType() const override;
 
     status_t emitTypeDeclarations(Formatter &out) const override;
-    status_t emitJavaTypeDeclarations(Formatter &out) const override;
+
+    status_t emitJavaTypeDeclarations(
+            Formatter &out, bool atTopLevel) const override;
 
     status_t emitTypeDefinitions(
             Formatter &out, const std::string prefix) const override;
@@ -42,6 +44,9 @@
 
     bool isJavaCompatible() const override;
 
+    size_t countTypes() const;
+    const Type *typeAt(size_t index, std::string *name) const;
+
 private:
     std::vector<Type *> mTypes;
     KeyedVector<std::string, size_t> mTypeIndexByName;