sc::SCElementSumAbs(3)

πŸ“¦
version 2.3.1 Β· 5 versions
, in ubuntu jammy

πŸ’… NAME πŸ’…

sc::SCElementSumAbs β€” hey bestie, you're on the MPQC manual page for the sc::SCElementSumAbs class, and it's lowkey iconic ✨. This is the whole vibe: a sum-abs element operation thing with every signature and virtual exactly where it belongs. No cap, we're keeping all the details πŸ’–.


✨ SYNOPSIS ✨

Inherits sc::SCElementOp.

🫢 Public Member Functions 🫢

  • SCElementSumAbs (StateIn &) β€” the signature from the page, bestie; no extra blurb here.
  • void save_data_state (StateOut &) β€” saves the base classes via save_data_state plus the members, in the exact same order that the StateIn CTOR initializes them. Very "keep it in order or it's not the same" energy πŸŽ€.
  • void process (SCMatrixBlockIter &) β€” this is the fallback routine to process blocks, and it gets called by process_spec members that are not overridden. Fallback queen behavior πŸ’….
  • int has_collect () β€” if duplicates of the SCElementOp exist (that is, there is more than one node), then if has_collect returns nonzero, collect is called with a MessageGrp reference after all of the blocks have been processed. Big "check first, then collect" energy ✨.
  • void defer_collect (int) β€” no extra blurb on the page for this one, just the signature, bestie 🫢.
  • void collect (const Ref< MessageGrp > &) β€” signature only on the page, no extra description here 🌸.
  • void collect (const Ref< SCElementOp > &) β€” multithreaded use of cloneable SCElementOp objects requires that data from cloned objects be collected. Clone-collect realness πŸ’–.
  • double result () β€” signature only on the page, no extra description here ⭐.
  • void init () β€” signature only on the page, no extra description here πŸ¦‹.

πŸ¦‹ Additional Inherited Members πŸ¦‹

The original page has this heading right here, and it doesn't add extra bullet points beyond what's already listed above. That's the whole section, bestie πŸ’œ.


πŸ’… Member Function Documentation πŸ’…

🧚 void sc::SCElementSumAbs::collect (const Ref< SCElementOp > &) [virtual]

Multithreaded use of cloneable SCElementOp objects requires that data from cloned objects be collected.

🚨 Heads up: the default implementation will throw an exception.

Reimplemented from sc::SCElementOp.

πŸ”₯ int sc::SCElementSumAbs::has_collect () [virtual]

If duplicates of the SCElementOp exist (that is, there is more than one node), then if has_collect returns nonzero then collect is called with a MessageGrp reference after all of the blocks have been processed.

The default return value of has_collect is 0 and collect's default action is do nothing. If defer_collect member is called with nonzero, collect will do nothing (this is only used by the blocked matrices).

Reimplemented from sc::SCElementOp.

πŸŽ€ void sc::SCElementSumAbs::save_data_state (StateOut &) [virtual]

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.

πŸ’– Important: this must be implemented by the derived class if the class has data.

Reimplemented from sc::SavableState.


🌈 Author 🌈

Generated automatically by Doxygen for MPQC from the source code. So nobody hand-wrote this bit, bestie β€” it's giving documentation machine energy πŸ€–βœ¨.


πŸ’– Version 2.3.1, dated Sun Oct 4 2020, page sc::SCElementSumAbs(3) β€” that's the whole MPQC source-code-generated situation, bestie. Slay and bye! πŸŽ€πŸ’…

πŸ“¦ where this page comes from