00001 #include <vector> 00002 #include <chemistry/qc/basis/gaussbas.h> 00003 #include <sidl_SIDLException.hxx> 00004 00009 namespace MpqcCca { 00010 00011 class BufferSize { 00012 00013 public: 00014 00015 BufferSize( ) { } 00016 00017 ~BufferSize( ) { } 00018 00019 private: 00020 int n_center_, max_deriv_lvl_, max_segment_size_, max_n_segment_, size_; 00021 sc::Ref<sc::GaussianBasisSet> basis_sets_[4]; 00022 00023 public: 00024 00025 void init( int n, 00026 sc::Ref<sc::GaussianBasisSet>, 00027 sc::Ref<sc::GaussianBasisSet>, 00028 sc::Ref<sc::GaussianBasisSet>, 00029 sc::Ref<sc::GaussianBasisSet> ); 00030 00031 void update( int deriv_lvl, int n_segment ); 00032 00033 int size() { return size_; } 00034 00035 }; 00036 }