Add dynamic interface casting to NN utility code
Prior to this CL, the NN utility code would always use the type of IPreparedModel provided by IPreparedModeCallback::notify*. This means that an IPreparedModel returned as a dynamic type of V1_X but static type of V1_Y would be used by the utility code as V1_Y. This CL adds dynamic casting, such that an IPreparedModel returned as a dynamic type of V1_X but static type V1_Y will be dynamically cast to V1_X and used as a V1_X::IPreparedModel. This CL also adds the utility functions V1_[0123]::convertFromNonCanonical to convert from a non-canonical type to another non-canonical type by using canonical types as an intermediate conversion "hop." Bug: 178180472 Test: mma Change-Id: I709b2a8944af2cc78b089aade55df1e2ab7b40cc Merged-In: I709b2a8944af2cc78b089aade55df1e2ab7b40cc (cherry picked from commit 49b5e4eb)
Loading
Please register or sign in to comment