Xmipp  v3.23.11-Nereus
Public Member Functions | List of all members
cif::pdb::Ff Class Reference
Inheritance diagram for cif::pdb::Ff:
Inheritance graph
[legend]
Collaboration diagram for cif::pdb::Ff:
Collaboration graph
[legend]

Public Member Functions

 Ff (row_handle r, const char *f)
 
 Ff (const category &cat, condition &&cond, const char *f)
 
virtual void out (std::ostream &os)
 
- Public Member Functions inherited from cif::pdb::FBase
virtual ~FBase ()
 

Additional Inherited Members

- Protected Member Functions inherited from cif::pdb::FBase
 FBase (row_handle r, const char *f)
 
 FBase (const category &cat, condition &&cond, const char *f)
 
std::string_view text () const
 
- Protected Attributes inherited from cif::pdb::FBase
row_handle mRow
 
const char * mField
 

Detailed Description

Definition at line 698 of file cif2pdb.cpp.

Constructor & Destructor Documentation

◆ Ff() [1/2]

cif::pdb::Ff::Ff ( row_handle  r,
const char *  f 
)
inline

Definition at line 701 of file cif2pdb.cpp.

702  : FBase(r, f)
703  {
704  }
double * f
FBase(row_handle r, const char *f)
Definition: cif2pdb.cpp:638

◆ Ff() [2/2]

cif::pdb::Ff::Ff ( const category &  cat,
condition &&  cond,
const char *  f 
)
inline

Definition at line 705 of file cif2pdb.cpp.

706  : FBase(cat, std::move(cond), f)
707  {
708  }
double * f
FBase(row_handle r, const char *f)
Definition: cif2pdb.cpp:638

Member Function Documentation

◆ out()

virtual void cif::pdb::Ff::out ( std::ostream &  os)
inlinevirtual

Implements cif::pdb::FBase.

Definition at line 710 of file cif2pdb.cpp.

711  {
712  if (mRow.empty() or mRow[mField].empty())
713  {
714  os << "NULL";
715  if (os.width() > 4)
716  os << std::string(os.width() - 4, ' ');
717  }
718  else
719  {
720  std::string s{ text() };
721 
722  double d = 0;
723  auto r = cif::from_chars(s.data(), s.data() + s.length(), d);
724  if (r.ec != std::errc())
725  {
726  if (VERBOSE > 0)
727  std::cerr << "Failed to write '" << s << "' as a double from field " << mField << ", this indicates an error in the code for writing PDB files" << std::endl;
728  os << s;
729  }
730  else
731  os << d;
732  }
733  }
std::string_view text() const
Definition: cif2pdb.cpp:651
doublereal * d
row_handle mRow
Definition: cif2pdb.cpp:656
int VERBOSE
Definition: utilities.cpp:58
const char * mField
Definition: cif2pdb.cpp:657

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