Exemplo n.º 1
0
vector<vector<int> > ChainCollectionTester::getPossibleStates(
    const Chain& chain)
{
    const vector<vector<wstring> >& possibleStatesString 
        = chain.GetPossibleStates();
    vector<vector<int> > possibleStates(possibleStatesString.size());
    for (size_t stateIndex = 0; stateIndex < possibleStates.size()
        ; ++stateIndex)
    {
        for (size_t featIndex = 0; featIndex < possibleStatesString[stateIndex].size()
            ; ++featIndex)
        {
            int featureIndex = outputAlphabet_->LookUpIndex_NoAdding(
                possibleStatesString[stateIndex][featIndex]);
            if (featureIndex >= 0) 
            {
                possibleStates[stateIndex].push_back(featureIndex);
            }
        }
    }
    return possibleStates;
}