# Class PropertyManager

java.lang.Object
org.jmol.viewer.PropertyManager

All Implemented Interfaces:
  `JmolPropertyManager`

public class PropertyManager extends Object implements JmolPropertyManager
The PropertyManager handles all operations relating to delivery of properties with the getProperty() method, or its specifically cast forms getPropertyString() or getPropertyJSON(). It is instantiated by reflection

## Constructor Summary

Constructors
Constructor
Description
`PropertyManager()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`checkPropertyParameter(String name)`
`Object`
`extractProperty(Object prop, Object args, int ptr, Lst<Object> v2, boolean isCompiled)`
`String`
`fixJMEFormalCharges(BS bsAtoms, String jme)`
Fix a JME string returned from NCI CIR to have the proper formal charges.
`Lst<Map<String,Object>>`
`getAllAtomInfo(BS bs)`
`Lst<Map<String,Object>>`
`getAllBondInfo(Object bsOrArray)`
`Map<String, Lst<Map<String,Object>>>`
`getAllChainInfo(BS bs)`
`String`
`getAtomData(String atomExpression, String type, boolean allTrajectories)`
use lower case to indicate coord data only (xyz, xyzrn, xyzvib, pdb.
`String`
`getChimeInfo(int tok, BS bs)`
`String`
`getDefaultPropertyParam(int propID)`
`Map<String,Object>`
`getLigandInfo(Object atomExpression)`
`String`
`getModelCml(BS bs, int atomsMax, boolean addBonds, boolean doTransform, boolean allTrajectories)`
`String`
`getModelExtract(BS bs, boolean doTransform, boolean isModelKit, String type, boolean allTrajectories)`
V3000, SDF, MOL, JSON, CD (ChemDoodle), XYZ, XYZVIB, XYZRN, CML, PDB, PQR, QCJSON, PWMAT, XSF MOL67 is MOL with bonds of type 6 or 7 (aromatic single/double)
`String`
`getModelFileInfo(BS frames)`
`Map<String,Object>`
`getModelInfo(Object atomExpression)`
`Lst<Map<String,Object>>`
`getMoleculeInfo(Object atomExpression)`
info ///
`String`
`getPdbAtomData(BS bs, OC out, boolean isPQR, boolean doTransform, boolean allTrajectories)`
PDB or PQR only
`String`
`getPdbData(int modelIndex, String type, BS bsSelected, Object[] parameters, OC out, boolean addStructure)`
`Object`
`getProperty(String returnType, String infoType, Object paramInfo)`
/ static methods used by Eval and Viewer ////
`int`
`getPropertyNumber(String infoType)`
`static String`
`getSDFDateLine(String version, boolean is2d)`
`void`
`setViewer(Viewer vwr)`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### PropertyManager

public PropertyManager()

## Method Details

### setViewer

public void setViewer(Viewer vwr)

Specified by:
  `setViewer` in interface `JmolPropertyManager`

### getPropertyNumber

public int getPropertyNumber(String infoType)

Specified by:
  `getPropertyNumber` in interface `JmolPropertyManager`

### getDefaultPropertyParam

public String getDefaultPropertyParam(int propID)

Specified by:
  `getDefaultPropertyParam` in interface `JmolPropertyManager`

### checkPropertyParameter

public boolean checkPropertyParameter(String name)

Specified by:
  `checkPropertyParameter` in interface `JmolPropertyManager`

### getProperty

public Object getProperty(String returnType, String infoType, Object paramInfo)
/ static methods used by Eval and Viewer ////

Specified by:
  `getProperty` in interface `JmolPropertyManager`

### extractProperty

public Object extractProperty(Object prop, Object args, int ptr, Lst<Object> v2, boolean isCompiled)

Specified by:
  `extractProperty` in interface `JmolPropertyManager`

### getMoleculeInfo

public Lst<Map<String,Object>> getMoleculeInfo(Object atomExpression)
info ///

### getModelInfo

public Map<String,Object> getModelInfo(Object atomExpression)

Specified by:
  `getModelInfo` in interface `JmolPropertyManager`

### getLigandInfo

public Map<String,Object> getLigandInfo(Object atomExpression)

Specified by:
  `getLigandInfo` in interface `JmolPropertyManager`

### getAtomData

public String getAtomData(String atomExpression, String type, boolean allTrajectories)
use lower case to indicate coord data only (xyz, xyzrn, xyzvib, pdb. use USER: or PROPERTY_xxxx for a property all other types return full data

Specified by:
  `getAtomData` in interface `JmolPropertyManager`

### getModelExtract

public String getModelExtract(BS bs, boolean doTransform, boolean isModelKit, String type, boolean allTrajectories)
V3000, SDF, MOL, JSON, CD (ChemDoodle), XYZ, XYZVIB, XYZRN, CML, PDB, PQR, QCJSON, PWMAT, XSF MOL67 is MOL with bonds of type 6 or 7 (aromatic single/double)

Specified by:
  `getModelExtract` in interface `JmolPropertyManager`

### getChimeInfo

public String getChimeInfo(int tok, BS bs)

Specified by:
  `getChimeInfo` in interface `JmolPropertyManager`

### getModelFileInfo

public String getModelFileInfo(BS frames)

Specified by:
  `getModelFileInfo` in interface `JmolPropertyManager`

### getAllAtomInfo

public Lst<Map<String,Object>> getAllAtomInfo(BS bs)

### getAllBondInfo

public Lst<Map<String,Object>> getAllBondInfo(Object bsOrArray)

### getAllChainInfo

public Map<String, Lst<Map<String,Object>>> getAllChainInfo(BS bs)

### getPdbAtomData

public String getPdbAtomData(BS bs, OC out, boolean isPQR, boolean doTransform, boolean allTrajectories)
PDB or PQR only

Specified by:
  `getPdbAtomData` in interface `JmolPropertyManager`
Parameters:
  `bs` - selected atoms
  `out` - StringXBuilder or BufferedWriter
Returns:
  PDB file data string

### getPdbData

public String getPdbData(int modelIndex, String type, BS bsSelected, Object[] parameters, OC out, boolean addStructure)

Specified by:
  `getPdbData` in interface `JmolPropertyManager`

### getModelCml

public String getModelCml(BS bs, int atomsMax, boolean addBonds, boolean doTransform, boolean allTrajectories)

Specified by:
  `getModelCml` in interface `JmolPropertyManager`

### fixJMEFormalCharges

public String fixJMEFormalCharges(BS bsAtoms, String jme)
Fix a JME string returned from NCI CIR to have the proper formal charges.

Specified by:
  `fixJMEFormalCharges` in interface `JmolPropertyManager`

### getSDFDateLine

public static String getSDFDateLine(String version, boolean is2d)