|
Macaulay2 Engine
|
SumCollector implementation that funnels engine-side ring_elem additions through a polyheap (geobucket). More...
Public Member Functions | |
| SumCollectorPolyHeap (const PolynomialRing *R0) | |
| ~SumCollectorPolyHeap () | |
| virtual void | add (ring_elem f) |
| virtual ring_elem | getValue () |
| Public Member Functions inherited from SumCollector | |
| SumCollector () | |
| virtual | ~SumCollector () |
Private Attributes | |
| polyheap | H |
Additional Inherited Members | |
| Static Public Member Functions inherited from our_new_delete | |
| static void * | operator new (size_t size) |
| static void * | operator new[] (size_t size) |
| static void | operator delete (void *obj) |
| static void | operator delete[] (void *obj) |
| static void * | operator new (size_t size, void *existing_memory) |
| static void * | operator new[] (size_t size, void *existing_memory) |
| static void | operator delete (void *obj, void *existing_memory) |
| static void | operator delete[] (void *obj, void *existing_memory) |
SumCollector implementation that funnels engine-side ring_elem additions through a polyheap (geobucket).
Constructed with the target PolynomialRing*; each add(f) inserts into the heap and getValue() merges all buckets into a single polynomial. Used as the per-call accumulator returned by PolynomialRing::make_SumCollector so callers that build a polynomial as a long sum (e.g. ring-map evaluation) avoid quadratic merge cost.
Definition at line 198 of file polyring.cpp.