void CGestureStore::ReadFormatV1( /* [in] */ IDataInputStream *in) { AutoPtr<Learner> classifier = mClassifier; mNamedGestures.Clear(); // Number of entries in the library Int32 entriesCount; IDataInput::Probe(in)->ReadInt32(&entriesCount); for (Int32 i = 0; i < entriesCount; i++) { // Entry name String name; IDataInput::Probe(in)->ReadUTF(&name); // Number of gestures Int32 gestureCount; IDataInput::Probe(in)->ReadInt32(&gestureCount); AutoPtr<GestureList> gestures = new GestureList(); for (Int32 j = 0; j < gestureCount; j++) { AutoPtr<IGesture> gesture; CGesture::Deserialize(in, (IGesture**)&gesture); gestures->PushBack(gesture); AutoPtr<Instance> instance = Instance::CreateInstance(mSequenceType, mOrientationStyle, gesture, name); classifier->AddInstance(instance); } mNamedGestures[name] = gestures; } }