sc::SCElementRandomize(3)

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

πŸ’… sc::SCElementRandomize β€” the MPQC manual page, but make it make sense ✨

okay so bestie, welcome to sc::SCElementRandomize πŸ’– this is a page from the MPQC manual (that's version 2.3.1, for the record β€” more on that at the end πŸŽ€). It's a C++ class page, so buckle up, we're doing object-oriented realness today πŸ¦‹


🌸 NAME 🌸

sc::SCElementRandomize β€” no cap, that's the whole name, that's the vibe ✨


πŸŽ€ SYNOPSIS πŸŽ€

She inherits from sc::SCElementOp πŸ’… so everything SCElementOp has going on, she's got too. Iconic inheritance behaviour, we love to see it.

Inherits sc::SCElementOp.

πŸ’– Public Member Functions πŸ’–

  • SCElementRandomize(StateIn &) β€” the constructor that takes a StateIn &. That's it, that's the whole signature, and yes you need to give it that StateIn reference, no shortcuts πŸ™ˆ
  • int has_side_effects() β€” by default this returns nonzero. (More on this in the member function docs down below, keep reading bestie πŸ‘€)
  • void save_data_state(StateOut &) β€” save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them 🫢
  • void process(SCMatrixBlockIter &) β€” this is the fallback routine to process blocks, and it gets called by process_spec members that are not overridden πŸ”₯

🌈 Additional Inherited Members 🌈

yes, there are more goodies she got from her parent class, they're inherited, they're additional, they're lowkey just there for you πŸ’œ (the original page points you at these, so consider this your shoutout ✨)


πŸ‘‘ Member Function Documentation πŸ‘‘

⭐ int sc::SCElementRandomize::has_side_effects() [virtual] ⭐

okay so this one matters β€” by default this returns nonzero πŸ’€ If the ElementOp specialization is gonna change any elements of the matrix, then this must be overridden to return nonzero. So like. if you're mutating matrix elements, do not leave this on the default, override it, periodt πŸ‘‘

🫢 Reimplemented from sc::SCElementOp.

πŸ¦‹ void sc::SCElementRandomize::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 πŸ’– And this is a whole thing: this must be implemented by the derived class if the class has data. no data? you're off the hook. data? bestie you're writing this function, sorry not sorry 😭

🧚 Reimplemented from sc::SavableState.

πŸ’œ Author πŸ’œ

Straight up: generated automatically by Doxygen for MPQC from the source code πŸ€–βœ¨ nobody hand-wrote this bad boy, the robot did it and honestly? slay.


sign-off time πŸŽ€ so this page is from Version 2.3.1, dated Sun Oct 4 2020, and it lives under the name sc::SCElementRandomize(3) in the MPQC manual. that's the whole footer, delivered with love πŸ’– bye bestie, go randomize some elements responsibly πŸŒΈπŸ¦‹πŸ’…

πŸ“¦ where this page comes from