internal static bool a_star2_internal(Intarray inputs,
Intarray vertices1,
Intarray vertices2,
Intarray outputs,
Floatarray costs,
IGenericFst fst1,
IGenericFst fst2,
Floatarray g1,
Floatarray g2,
CompositionFst composition)
{
Intarray vertices = new Intarray();
AStarCompositionSearch a = new AStarCompositionSearch(g1, g2, composition);
if (!a.Loop())
{
return(false);
}
if (!a.reconstruct_vertices(vertices))
{
return(false);
}
a.reconstruct_edges(inputs, outputs, costs, vertices);
composition.SplitIndices(vertices1, vertices2, vertices);
return(true);
}