/** * @param patterns * @return ???? */ public Vector<EventSequence> postProcessing(Vector<EventSequence> patterns) { Vector<EventSequence> vec = new Vector<EventSequence>(); for (int i = 0; i < patterns.size(); i++) { EventSequence s = patterns.elementAt(i); if (postAccepts(s)) vec.addElement(s); } return vec; }
/** * @param db * @return a db transformed in a database of events ??? */ public Database preProcessing(Database db) { Vector<Element> alphabet = m_tdm.m_contentC.m_taxonomy.getAlphabet(m_tdm.m_contentC.m_level); Database preprocDB = new Database(); for (int i = 0; i < db.getSize(); i++) { EventSequence s = db.elementAt(i); Vector<Event> events = new Vector<Event>(0); for (int k = 0; k < s.length(); k++) { Event e = s.elementAtIndex(k); if (m_tdm.m_temporalC.accepts(e)) { Vector<Element> v = getParents(e.getSet(), alphabet, m_tdm.m_contentC.m_taxonomy); if (null != v) events.addElement(new Event(new ItemSet(v), e.getInstant())); } } if (0 != events.size()) preprocDB.addElement(new EventSequence(events)); } preprocDB.setAlphabet(alphabet); return preprocDB; }
/** * Verifies the support and creates the infrastructure to generate initial projectedDBs for each * element in the database. * * @param s The db sequence to verify. * @param alphabet The set of elements in the db. * @param sup An array to store elements support. * @param seqDB An array of vectores with the ids of sequences where each element occur. * @param posDB An array of vectores with the positions where each element occur. * @param index The first index to look for. * @return True if the sequence supports some valid elements. */ public boolean verifyGeneralAcceptance( EventSequence s, Vector<Element> alphabet, long[] sup, Vector<Integer>[] seqDB, Vector<Integer>[] posDB, int index) { boolean seqSupports = false; BitSet bs = new BitSet(alphabet.size()); bs.clear(); int from = 0; while (from < s.length()) { seqSupports = true; verifyContentGeneralAcceptance( s.elementAtIndex(from), alphabet, bs, sup, seqDB, posDB, index, from); from++; } return seqSupports; }