30#ifndef _chemistry_qc_basis_distshpair_h
31#define _chemistry_qc_basis_distshpair_h
37#include <util/misc/regtime.h>
38#include <util/group/message.h>
39#include <util/group/thread.h>
40#include <chemistry/qc/basis/basis.h>
54 volatile long int shellpair_;
60 void init() { shellpair_ = 0; }
73 double print_percent_;
81 long int print_interval_;
83 long int current_shellpair_;
103 void init_dynamic_work();
This is used to store data that must be shared between all cooperating shell pairs.
Definition distshpair.h:52
void init()
If this will be used to iterate through the shells again, then init must be called.
Definition distshpair.h:60
SharedData()
Construct and initialize.
Definition distshpair.h:56
void init()
Resets to the first shell pair.
DistShellPair(const Ref< MessageGrp > &, int nthread, int mythread, const Ref< ThreadLock > &lock, const Ref< GaussianBasisSet > &bs1, const Ref< GaussianBasisSet > &bs2, bool dynamic, SharedData *shared=0)
The DistShellPair class is used to distribute shell pair indices among tasks.
void set_debug(int d)
How much stuff to print out.
Definition distshpair.h:116
int get_task(int &P, int &Q)
Puts the current PQ shell pair into P and Q and returns 1.
void set_print_percent(double p)
How often to print status from node 0.
A template class that maintains references counts.
Definition ref.h:332