OpenStructure
Public Member Functions | Protected Member Functions
CoordSource Class Referenceabstract

#include <coord_source.hh>

Inherited by InMemCoordSource.

Public Member Functions

 CoordSource (const AtomHandleList &atoms)
 
virtual ~CoordSource ()
 
virtual uint GetFrameCount () const =0
 
virtual CoordFramePtr GetFrame (uint frame_id) const =0
 
CoordSourcePtr Extract (int start=0, int stop=-1, int step=1)
 
float GetFrameDelta () const
 
void SetFrameDelta (float d)
 
float GetStartTime () const
 
void SetStartTime (float t)
 
int GetAtomCount () const
 
EntityHandle GetEntity () const
 
const AtomHandleListGetAtomList () const
 
void SetAtomPos (uint frame, AtomHandle atom, const geom::Vec3 &pos)
 
geom::Vec3 GetAtomPos (uint frame, AtomHandle atom) const
 
void CopyFrame (uint frame)
 
bool IsMutable () const
 
void Capture ()
 
void CaptureInto (int pos)
 
void Capture (uint f)
 
void SetFramePositions (uint frame, const std::vector< geom::Vec3 > &clist)
 
void SetFrameCellSize (uint frame, const geom::Vec3 &size)
 
virtual void AddFrame (const std::vector< geom::Vec3 > &coords)=0
 
virtual void AddFrame (const std::vector< geom::Vec3 > &coords, const geom::Vec3 &cell_size, const geom::Vec3 &cell_angles)=0
 
virtual void InsertFrame (int pos, const std::vector< geom::Vec3 > &coords)=0
 
void ApplyTransform (const geom::Transform &tf)
 

Protected Member Functions

void SetMutable (bool flag)
 

Detailed Description

coordinate source

The coord source implements a strategy to provide coordinates, i.e from a trajectory. In it's simplest incarnaction, InMemCoordSource, the frame coordinates are already present in memory.

Definition at line 46 of file coord_source.hh.

Constructor & Destructor Documentation

◆ CoordSource()

CoordSource ( const AtomHandleList atoms)

◆ ~CoordSource()

virtual ~CoordSource ( )
inlinevirtual

Definition at line 50 of file coord_source.hh.

Member Function Documentation

◆ AddFrame() [1/2]

virtual void AddFrame ( const std::vector< geom::Vec3 > &  coords)
pure virtual

Implemented in InMemCoordSource.

◆ AddFrame() [2/2]

virtual void AddFrame ( const std::vector< geom::Vec3 > &  coords,
const geom::Vec3 cell_size,
const geom::Vec3 cell_angles 
)
pure virtual

Implemented in InMemCoordSource.

◆ ApplyTransform()

void ApplyTransform ( const geom::Transform tf)

◆ Capture() [1/2]

void Capture ( )

◆ Capture() [2/2]

void Capture ( uint  f)

◆ CaptureInto()

void CaptureInto ( int  pos)

◆ CopyFrame()

void CopyFrame ( uint  frame)

assign the coordinates in the given frame to the atoms

◆ Extract()

CoordSourcePtr Extract ( int  start = 0,
int  stop = -1,
int  step = 1 
)

◆ GetAtomCount()

int GetAtomCount ( ) const

◆ GetAtomList()

const AtomHandleList& GetAtomList ( ) const

◆ GetAtomPos()

geom::Vec3 GetAtomPos ( uint  frame,
AtomHandle  atom 
) const

◆ GetEntity()

EntityHandle GetEntity ( ) const

◆ GetFrame()

virtual CoordFramePtr GetFrame ( uint  frame_id) const
pure virtual

Implemented in InMemCoordSource.

◆ GetFrameCount()

virtual uint GetFrameCount ( ) const
pure virtual

Implemented in InMemCoordSource.

◆ GetFrameDelta()

float GetFrameDelta ( ) const
inline

Definition at line 59 of file coord_source.hh.

◆ GetStartTime()

float GetStartTime ( ) const
inline

Definition at line 63 of file coord_source.hh.

◆ InsertFrame()

virtual void InsertFrame ( int  pos,
const std::vector< geom::Vec3 > &  coords 
)
pure virtual

Implemented in InMemCoordSource.

◆ IsMutable()

bool IsMutable ( ) const

◆ SetAtomPos()

void SetAtomPos ( uint  frame,
AtomHandle  atom,
const geom::Vec3 pos 
)

◆ SetFrameCellSize()

void SetFrameCellSize ( uint  frame,
const geom::Vec3 size 
)

◆ SetFrameDelta()

void SetFrameDelta ( float  d)
inline

Definition at line 60 of file coord_source.hh.

◆ SetFramePositions()

void SetFramePositions ( uint  frame,
const std::vector< geom::Vec3 > &  clist 
)

◆ SetMutable()

void SetMutable ( bool  flag)
protected

◆ SetStartTime()

void SetStartTime ( float  t)
inline

Definition at line 64 of file coord_source.hh.


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