Пример #1
0
BitField StateConstraints::maxTrap(const PetriNet& net,
								   BitField places,
								   const MarkVal* resultMarking) const{
	BitField next(places.size());
	BitField prev(places);
	do{
		prev = places;
		for(size_t i = 0; i < places.size(); i++)
			next.set(i, isInMaxTrap(net, i, places, resultMarking));
		places = next;
	}while(prev != next);
	return places;
}
Пример #2
0
void
TestBitField3D<T>::testDefaultConstructor()
{
    DEFINE_TYPEDEFS;

    BitField bf;
    CPPUNIT_ASSERT(bf.size() == 0);
    CPPUNIT_ASSERT(bf.capacity() == 0);
    CPPUNIT_ASSERT(bf.toString() == "");
}
Пример #3
0
bool StateConstraints::isMarked(const BitField& places, const MarkVal* marking) const{
	for(size_t p = 0; p < places.size(); p++)
		if(places.test(p) && marking[p] > 0)
			return true;
	return false;
}