Field3D
SparseFile::FileReferences Class Reference

#include <SparseFile.h>

Public Member Functions

template<class Data_T >
int append (const Reference< Data_T > &ref)
 Appends a reference to the collection. This is specialized so that the correct data member is accessed. More...
 
template<>
int append (const Reference< half > &ref)
 
template<>
int append (const Reference< V3h > &ref)
 
template<>
int append (const Reference< float > &ref)
 
template<>
int append (const Reference< V3f > &ref)
 
template<>
int append (const Reference< double > &ref)
 
template<>
int append (const Reference< V3d > &ref)
 
template<class Data_T >
int numRefs () const
 Returns the number of file references of the corresponding collection. More...
 
template<>
int numRefs () const
 
template<>
int numRefs () const
 
template<>
int numRefs () const
 
template<>
int numRefs () const
 
template<>
int numRefs () const
 
template<>
int numRefs () const
 
template<class Data_T >
Reference< Data_T > & ref (int idx)
 Returns a reference to the index. This is specialized so that the correct data member is accessed. More...
 
template<>
Reference< half > & ref (int idx)
 
template<>
Reference< V3h > & ref (int idx)
 
template<>
Reference< float > & ref (int idx)
 
template<>
Reference< V3f > & ref (int idx)
 
template<>
Reference< double > & ref (int idx)
 
template<>
Reference< V3d > & ref (int idx)
 

Private Attributes

std::vector< Reference< double > > m_dRefs
 
std::vector< Reference< float > > m_fRefs
 
std::vector< Reference< half > > m_hRefs
 
std::vector< Reference< V3d > > m_vdRefs
 
std::vector< Reference< V3f > > m_vfRefs
 
std::vector< Reference< V3h > > m_vhRefs
 

Detailed Description

Definition at line 206 of file SparseFile.h.

Member Function Documentation

template<class Data_T >
Reference< Data_T > & SparseFile::FileReferences::ref ( int  idx)

Returns a reference to the index. This is specialized so that the correct data member is accessed.

Definition at line 906 of file SparseFile.h.

References Msg::print(), and Msg::SevWarning.

Referenced by SparseFileManager::activateBlock(), SparseFileManager::deallocateBlock(), SparseFileManager::decBlockRef(), SparseFileManager::incBlockRef(), SparseFileManager::numLoadedBlocks(), SparseFileManager::reference(), SparseFileManager::removeFieldFromCache(), SparseFileManager::resetCacheStatistics(), SparseFileManager::totalLoadedBlocks(), and SparseFileManager::totalLoads().

907 {
908  assert(false && "Do not use memory limiting on sparse fields that aren't "
909  "simple scalars or vectors!");
911  "FileReferences::ref(): Do not use memory limiting on sparse "
912  "fields that aren't simple scalars or vectors!");
913  static Reference<Data_T> dummy("", "");
914  return dummy;
915 }
void print(Severity severity, const std::string &message)
Sends the string to the assigned output, prefixing the message with the severity. ...
Definition: Log.cpp:62
template<class Data_T >
int SparseFile::FileReferences::append ( const Reference< Data_T > &  ref)

Appends a reference to the collection. This is specialized so that the correct data member is accessed.

Definition at line 920 of file SparseFile.h.

References Msg::print(), and Msg::SevWarning.

Referenced by SparseFileManager::getNextId().

921 {
922  assert(false && "Do not use memory limiting on sparse fields that aren't "
923  "simple scalars or vectors!");
925  "FileReferences::append(): Do not use memory limiting on sparse "
926  "fields that aren't simple scalars or vectors!");
927  return -1;
928 }
void print(Severity severity, const std::string &message)
Sends the string to the assigned output, prefixing the message with the severity. ...
Definition: Log.cpp:62
template<class Data_T >
int SparseFile::FileReferences::numRefs ( ) const

Returns the number of file references of the corresponding collection.

Definition at line 933 of file SparseFile.h.

References Msg::print(), and Msg::SevWarning.

Referenced by SparseFileManager::numLoadedBlocks(), SparseFileManager::resetCacheStatistics(), SparseFileManager::totalLoadedBlocks(), and SparseFileManager::totalLoads().

934 {
935  assert(false && "Do not use memory limiting on sparse fields that aren't "
936  "simple scalars or vectors!");
938  "FileReferences::numRefs(): "
939  "Do not use memory limiting on sparse "
940  "fields that aren't "
941  "simple scalars or vectors!");
942  return -1;
943 }
void print(Severity severity, const std::string &message)
Sends the string to the assigned output, prefixing the message with the severity. ...
Definition: Log.cpp:62
template<>
Reference<half>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 749 of file SparseFile.h.

References m_hRefs.

750 {
751  return m_hRefs[idx];
752 }
std::vector< Reference< half > > m_hRefs
Definition: SparseFile.h:230
template<>
Reference<V3h>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 758 of file SparseFile.h.

References m_vhRefs.

759 {
760  return m_vhRefs[idx];
761 }
std::vector< Reference< V3h > > m_vhRefs
Definition: SparseFile.h:231
template<>
Reference<float>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 767 of file SparseFile.h.

References m_fRefs.

768 {
769  return m_fRefs[idx];
770 }
std::vector< Reference< float > > m_fRefs
Definition: SparseFile.h:232
template<>
Reference<V3f>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 776 of file SparseFile.h.

References m_vfRefs.

777 {
778  return m_vfRefs[idx];
779 }
std::vector< Reference< V3f > > m_vfRefs
Definition: SparseFile.h:233
template<>
Reference<double>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 785 of file SparseFile.h.

References m_dRefs.

786 {
787  return m_dRefs[idx];
788 }
std::vector< Reference< double > > m_dRefs
Definition: SparseFile.h:234
template<>
Reference<V3d>& SparseFile::FileReferences::ref ( int  idx)
inline

Definition at line 794 of file SparseFile.h.

References m_vdRefs.

795 {
796  return m_vdRefs[idx];
797 }
std::vector< Reference< V3d > > m_vdRefs
Definition: SparseFile.h:235
template<>
int SparseFile::FileReferences::append ( const Reference< half > &  ref)
inline

Definition at line 802 of file SparseFile.h.

References m_hRefs.

803 {
804  m_hRefs.push_back(ref);
805  return m_hRefs.size() - 1;
806 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< half > > m_hRefs
Definition: SparseFile.h:230
template<>
int SparseFile::FileReferences::append ( const Reference< V3h > &  ref)
inline

Definition at line 811 of file SparseFile.h.

References m_vhRefs.

812 {
813  m_vhRefs.push_back(ref);
814  return m_vhRefs.size() - 1;
815 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< V3h > > m_vhRefs
Definition: SparseFile.h:231
template<>
int SparseFile::FileReferences::append ( const Reference< float > &  ref)
inline

Definition at line 820 of file SparseFile.h.

References m_fRefs.

821 {
822  m_fRefs.push_back(ref);
823  return m_fRefs.size() - 1;
824 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< float > > m_fRefs
Definition: SparseFile.h:232
template<>
int SparseFile::FileReferences::append ( const Reference< V3f > &  ref)
inline

Definition at line 829 of file SparseFile.h.

References m_vfRefs.

830 {
831  m_vfRefs.push_back(ref);
832  return m_vfRefs.size() - 1;
833 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< V3f > > m_vfRefs
Definition: SparseFile.h:233
template<>
int SparseFile::FileReferences::append ( const Reference< double > &  ref)
inline

Definition at line 838 of file SparseFile.h.

References m_dRefs.

839 {
840  m_dRefs.push_back(ref);
841  return m_dRefs.size() - 1;
842 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< double > > m_dRefs
Definition: SparseFile.h:234
template<>
int SparseFile::FileReferences::append ( const Reference< V3d > &  ref)
inline

Definition at line 847 of file SparseFile.h.

References m_vdRefs.

848 {
849  m_vdRefs.push_back(ref);
850  return m_vdRefs.size() - 1;
851 }
Reference< Data_T > & ref(int idx)
Returns a reference to the index. This is specialized so that the correct data member is accessed...
Definition: SparseFile.h:906
std::vector< Reference< V3d > > m_vdRefs
Definition: SparseFile.h:235
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 856 of file SparseFile.h.

857 {
858  return m_hRefs.size();
859 }
std::vector< Reference< half > > m_hRefs
Definition: SparseFile.h:230
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 864 of file SparseFile.h.

865 {
866  return m_vhRefs.size();
867 }
std::vector< Reference< V3h > > m_vhRefs
Definition: SparseFile.h:231
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 872 of file SparseFile.h.

873 {
874  return m_fRefs.size();
875 }
std::vector< Reference< float > > m_fRefs
Definition: SparseFile.h:232
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 880 of file SparseFile.h.

881 {
882  return m_vfRefs.size();
883 }
std::vector< Reference< V3f > > m_vfRefs
Definition: SparseFile.h:233
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 888 of file SparseFile.h.

889 {
890  return m_dRefs.size();
891 }
std::vector< Reference< double > > m_dRefs
Definition: SparseFile.h:234
template<>
int SparseFile::FileReferences::numRefs ( ) const
inline

Definition at line 896 of file SparseFile.h.

897 {
898  return m_vdRefs.size();
899 }
std::vector< Reference< V3d > > m_vdRefs
Definition: SparseFile.h:235

Member Data Documentation

std::vector<Reference<half> > SparseFile::FileReferences::m_hRefs
private

Definition at line 230 of file SparseFile.h.

Referenced by append(), and ref().

std::vector<Reference<V3h> > SparseFile::FileReferences::m_vhRefs
private

Definition at line 231 of file SparseFile.h.

Referenced by append(), and ref().

std::vector<Reference<float> > SparseFile::FileReferences::m_fRefs
private

Definition at line 232 of file SparseFile.h.

Referenced by append(), and ref().

std::vector<Reference<V3f> > SparseFile::FileReferences::m_vfRefs
private

Definition at line 233 of file SparseFile.h.

Referenced by append(), and ref().

std::vector<Reference<double> > SparseFile::FileReferences::m_dRefs
private

Definition at line 234 of file SparseFile.h.

Referenced by append(), and ref().

std::vector<Reference<V3d> > SparseFile::FileReferences::m_vdRefs
private

Definition at line 235 of file SparseFile.h.

Referenced by append(), and ref().


The documentation for this class was generated from the following file: