Atoms Crowd  4.1.0
AtomsCore Namespace Reference

AtomsCore namespace. More...

Classes

class  Archive
 Archive class. More...
 
class  ArrayMetadata
 ArrayMetadata class. More...
 
class  BaseTypedArrayMetadata
 
struct  FootStruct
 
class  HashedString
 
class  Joint
 Joint class. More...
 
class  JointChain
 JointChain class. More...
 
class  JointPose
 Joint pose. More...
 
class  MapMetadata
 MapMetadata class. More...
 
class  Metadata
 Base Metadata class. More...
 
class  MetadataFactory
 Metadata factory. More...
 
class  MetadataImpl
 Metadata template class. More...
 
struct  MetadataTraits
 metadata type trait More...
 
struct  MetadataTraits< AtomsCore::Vector2 >
 
struct  MetadataTraits< AtomsCore::Vector2f >
 
struct  MetadataTraits< AtomsCore::Vector2i >
 
struct  MetadataTraits< AtomsCore::Vector3 >
 
struct  MetadataTraits< AtomsCore::Vector3f >
 
struct  MetadataTraits< AtomsCore::Vector3i >
 
struct  MetadataTraits< AtomsCore::Vector4 >
 
struct  MetadataTraits< AtomsCore::Vector4f >
 
struct  MetadataTraits< AtomsCore::Vector4i >
 
struct  MetadataTraits< double >
 
struct  MetadataTraits< float >
 
struct  MetadataTraits< int >
 
struct  MetadataTraits< long >
 
struct  MetadataTraits< short >
 
class  MurmurHash3
 
struct  PelvisChain
 
class  Pose
 Pose class. More...
 
class  Poser
 Poser class. More...
 
class  Skeleton
 Skeleton class. More...
 
struct  SkeletonLod
 
class  TypedArrayMetadata
 Metadata template class. More...
 

Typedefs

typedef AtomsMath::Vector2 Vector2
 Vector2 class.
 
typedef AtomsMath::Vector2f Vector2f
 Vector2 class.
 
typedef AtomsMath::Vector2i Vector2i
 Vector2 class.
 
typedef AtomsMath::Vector3 Vector3
 Vector3 class.
 
typedef AtomsMath::Vector3f Vector3f
 Vector3 class.
 
typedef AtomsMath::Vector3i Vector3i
 Vector3i class.
 
typedef AtomsMath::Vector4 Vector4
 Vector4 class.
 
typedef AtomsMath::Vector4f Vector4f
 Vector4 class.
 
typedef AtomsMath::Vector4i Vector4i
 Vector4 class.
 
typedef AtomsMath::Matrix Matrix
 Matrix class.
 
typedef AtomsMath::Matrixf Matrixf
 Matrix class.
 
typedef AtomsMath::Matrix33 Matrix33
 Matrix class.
 
typedef AtomsMath::Matrix33f Matrix33f
 Matrix class.
 
typedef AtomsMath::Quaternion Quaternion
 Quaternion class.
 
typedef AtomsMath::Quaternionf Quaternionf
 Quaternion class.
 
typedef AtomsMath::Euler Euler
 Euler class.
 
typedef AtomsMath::Eulerf Eulerf
 Euler class.
 
typedef AtomsMath::Box2 Box2
 Bounding box class.
 
typedef AtomsMath::Box2f Box2f
 Bounding box class.
 
typedef AtomsMath::Box2i Box2i
 Bounding box class.
 
typedef AtomsMath::Box3 Box3
 Bounding box class.
 
typedef AtomsMath::Box3f Box3f
 Bounding box class.
 
typedef AtomsMath::Box3i Box3i
 Bounding box class.
 
typedef AtomsMath::Color3c Color3c
 Color class.
 
typedef AtomsMath::Color3f Color3f
 Color class.
 
typedef AtomsMath::Color4c Color4c
 Color class.
 
typedef AtomsMath::Color4f Color4f
 Color class.
 
typedef AtomsMath::Rand32 Rand32
 
typedef AtomsMath::Rand48 Rand48
 
typedef JointJointPtr
 Joint pointer.
 
typedef const JointJointCPtr
 Joint const pointer.
 
typedef std::vector< JointPtrJointPtrArray
 Vector fo joint pointers.
 
typedef JointChainJointChainPtr
 JointChain pointer.
 
typedef const JointChainJointChainCPtr
 JointChain const pointer.
 
typedef std::vector< JointChainPtrJointChainPtrArray
 Vector fo jointChain pointers.
 
typedef PosePosePtr
 Fwd declaration. More...
 
typedef const PosePoseCPtr
 Pose const pointer.
 
typedef SkeletonSkeletonPtr
 Skeleton pointer.
 
typedef const SkeletonSkeletonCPtr
 Skeleton const pointer.
 

Functions

double degreesToRadians (double fDeg)
 Fwd poser classs declaration. More...
 
double radiansToDegrees (double radians)
 convert radians to degrees
 
Vector3 degreesToRadians (const Vector3 &rads)
 convert degrees vec to radians
 
ATOMSCORE_EXPORT void extractSRT (const Matrix &matrix, Vector3 &scale, Quaternion &rotation, Vector3 &translation)
 
ATOMSCORE_EXPORT void extractSRT (const Matrixf &matrix, Vector3f &scale, Quaternionf &rotation, Vector3f &translation)
 
ATOMSCORE_EXPORT void solveTwoJointsIK (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const Vector3 &targetPoint, unsigned short rootJointId, unsigned short midJointId, unsigned short footJointId, double stretch, bool doSoft, double softDistance, AtomsCore::Vector3 *customPoleVec=nullptr)
 Two joint ik solver with stretch and soft extension.
 
ATOMSCORE_EXPORT void solveTwoJointsIKInParentSpace (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const Vector3 &targetPoint, unsigned short rootJointId, unsigned short midJointId, unsigned short footJointId, double stretch, bool doSoft, double softDistance, AtomsCore::Vector3 *customPoleVec=nullptr)
 Two joint ik solver with stretch and soft extension.
 
ATOMSCORE_EXPORT void solveTwoJointsIKNoPoleVector (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, unsigned short midJointId, unsigned short ikJointId, double stretch, bool doSoft, double softDistance)
 Two joint ik solver without pole plane solver.
 
ATOMSCORE_EXPORT void solveTwoJointsIKNoPoleVectorInParentSpace (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, unsigned short midJointId, unsigned short ikJointId, double stretch, bool doSoft, double softDistance)
 Two joint ik solver without pole plane solver.
 
ATOMSCORE_EXPORT void fabrikIKSolver (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, const std::vector< unsigned short > &midJointIds, unsigned short footJointId, const double tolerance=0.001, unsigned int maxIterations=10, unsigned int numSubStep=5, AtomsCore::Vector3 *customPoleVec=nullptr)
 Fabrik IK solver.
 
ATOMSCORE_EXPORT void fabrikIKSolver2 (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const AtomsCore::Vector3 &targetPoint, const std::vector< unsigned short > &jointIds, const double reachableThreshold=0.01, const double tolerance=0.001, unsigned int maxIterations=10, unsigned int numSubStep=5, AtomsCore::Vector3 *customPoleVec=nullptr)
 Fabrik Positions solver.
 
ATOMSCORE_EXPORT void fabrikIKSolver2InParentSpace (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, const AtomsCore::Vector3 &targetPoint, const std::vector< unsigned short > &jointIds, const double reachableThreshold=0.01, const double tolerance=0.001, unsigned int maxIterations=10, unsigned int numSubStep=5, AtomsCore::Vector3 *customPoleVec=nullptr)
 Fabrik Positions solver.
 
ATOMSCORE_EXPORT bool isParallel (const Vector3 &vector, const Vector3 &otherVector)
 Checks if two vectors are parallel.
 
ATOMSCORE_EXPORT int circleCircleIntersection (const AtomsCore::Vector2 &p0, double r0, const AtomsCore::Vector2 &p1, double r1, AtomsCore::Vector2 &o1, AtomsCore::Vector2 &o2)
 
ATOMSCORE_EXPORT void sphereIKSolver (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, const std::vector< unsigned short > &midJointIds, unsigned short footJointId, AtomsCore::Vector3 *customPoleVec=nullptr)
 Sphere IK solver - analythic ik solver for 3 bones planar chains.
 
ATOMSCORE_EXPORT void fabrikIK3DSolver (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, const std::vector< unsigned short > &midJointIds, const std::vector< unsigned short > &legJointIds, unsigned short footJointId, const double tolerance, unsigned int maxIterations, unsigned int numSubStep, AtomsCore::Vector3 *customPoleVec)
 
ATOMSCORE_EXPORT void fabrikIK3DSolverInParentSpace (AtomsCore::Pose &outPose, const AtomsCore::Skeleton &skeleton, AtomsCore::Vector3 &targetPoint, unsigned short rootJointId, const std::vector< unsigned short > &midJointIds, const std::vector< unsigned short > &legJointIds, unsigned short footJointId, const double tolerance, unsigned int maxIterations, unsigned int numSubStep, AtomsCore::Vector3 *customPoleVec)
 
ATOMSCORE_EXPORT float valueBitRound (float value, unsigned int round=10)
 
template<class T >
blendValue (const T &v1, const T &v2, float weight)
 
template<>
char blendValue (const char &v1, const char &v2, float weight)
 
template<>
unsigned char blendValue (const unsigned char &v1, const unsigned char &v2, float weight)
 
template<>
short blendValue (const short &v1, const short &v2, float weight)
 
template<>
unsigned short blendValue (const unsigned short &v1, const unsigned short &v2, float weight)
 
template<>
int blendValue (const int &v1, const int &v2, float weight)
 
template<>
unsigned int blendValue (const unsigned int &v1, const unsigned int &v2, float weight)
 
template<>
int64_t blendValue (const int64_t &v1, const int64_t &v2, float weight)
 
template<>
uint64_t blendValue (const uint64_t &v1, const uint64_t &v2, float weight)
 
template<>
bool blendValue (const bool &v1, const bool &v2, float weight)
 
template<>
AtomsCore::Quaternion blendValue (const AtomsCore::Quaternion &v1, const AtomsCore::Quaternion &v2, float weight)
 
template<>
AtomsCore::Quaternionf blendValue (const AtomsCore::Quaternionf &v1, const AtomsCore::Quaternionf &v2, float weight)
 
template<>
AtomsCore::Matrix blendValue (const AtomsCore::Matrix &v1, const AtomsCore::Matrix &v2, float weight)
 
template<>
AtomsCore::Matrixf blendValue (const AtomsCore::Matrixf &v1, const AtomsCore::Matrixf &v2, float weight)
 
template<>
AtomsCore::Box2 blendValue (const AtomsCore::Box2 &b1, const AtomsCore::Box2 &b2, float weight)
 
template<>
AtomsCore::Box2f blendValue (const AtomsCore::Box2f &b1, const AtomsCore::Box2f &b2, float weight)
 
template<>
AtomsCore::Box2i blendValue (const AtomsCore::Box2i &b1, const AtomsCore::Box2i &b2, float weight)
 
template<>
AtomsCore::Box3 blendValue (const AtomsCore::Box3 &b1, const AtomsCore::Box3 &b2, float weight)
 
template<>
AtomsCore::Box3f blendValue (const AtomsCore::Box3f &b1, const AtomsCore::Box3f &b2, float weight)
 
template<>
AtomsCore::Box3i blendValue (const AtomsCore::Box3i &b1, const AtomsCore::Box3i &b2, float weight)
 
template<>
AtomsCore::Vector2i blendValue (const AtomsCore::Vector2i &b1, const AtomsCore::Vector2i &b2, float weight)
 
template<>
AtomsCore::Vector3i blendValue (const AtomsCore::Vector3i &b1, const AtomsCore::Vector3i &b2, float weight)
 
template<>
AtomsCore::Vector4i blendValue (const AtomsCore::Vector4i &b1, const AtomsCore::Vector4i &b2, float weight)
 
template<>
std::string blendValue (const std::string &v1, const std::string &v2, float weight)
 
ATOMSCORE_EXPORT Matrix matrixInverse (const Matrix &mtx)
 
ATOMSCORE_EXPORT Matrixf matrixInverse (const Matrixf &mtx)
 
ATOMSCORE_EXPORT void invertMatrix (Matrix &mtx)
 
ATOMSCORE_EXPORT void invertMatrix (Matrixf &mtx)
 
ATOMSCORE_EXPORT void extractSHRT (Matrix &mtx, AtomsCore::Vector3 &scale, AtomsCore::Vector3 &shear, AtomsCore::Euler &eulerRotation, AtomsCore::Vector3 &transl)
 
ATOMSCORE_EXPORT void extractSHRT (Matrixf &mtx, AtomsCore::Vector3f &scale, AtomsCore::Vector3f &shear, AtomsCore::Eulerf &eulerRotation, AtomsCore::Vector3f &transl)
 
double linstep (double a, double b, double value)
 
uint32_t rotl32 (uint32_t x, int8_t r)
 
uint64_t rotl64 (uint64_t x, int8_t r)
 
FORCE_INLINE uint32_t getblock32 (const uint32_t *p, size_t i)
 
FORCE_INLINE uint64_t getblock64 (const uint64_t *p, size_t i)
 
FORCE_INLINE uint32_t fmix32 (uint32_t h)
 
FORCE_INLINE uint64_t fmix64 (uint64_t k)
 
template<>
size_t memSize (const HashedString &data)
 
template<>
Archiveoperator<< (Archive &os, const HashedString &obj)
 
template<>
Archiveoperator>> (Archive &is, HashedString &obj)
 
std::ostream & operator<< (std::ostream &os, const HashedString &obj)
 
ATOMSCORE_EXPORT void initAtomsCore ()
 Initialize atoms core.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::JointPose &pose)
 Serialization function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, AtomsCore::JointPose &pose)
 Deserialization function.
 
template<class T >
size_t memSize (const T &data)
 Single data memory size template function. More...
 
template<class T >
size_t memSize (const std::vector< T > &data)
 Vector data memory size template function.
 
template<>
size_t memSize (const std::string &data)
 
template<>
size_t memSize (const std::vector< bool > &data)
 Memory size of bool vector. More...
 
template<>
size_t memSize (const AtomsCore::Matrix &data)
 
template<>
size_t memSize (const AtomsCore::Matrixf &data)
 
template<>
size_t memSize (const AtomsCore::Matrix33 &data)
 
template<>
size_t memSize (const AtomsCore::Matrix33f &data)
 
template<>
size_t memSize (const AtomsCore::Quaternion &data)
 
template<>
size_t memSize (const AtomsCore::Quaternionf &data)
 
template<>
size_t memSize (const AtomsCore::Box3 &data)
 
template<>
size_t memSize (const AtomsCore::Box3f &data)
 
template<>
size_t memSize (const AtomsCore::Box3i &data)
 
template<>
size_t memSize (const AtomsCore::Box2 &data)
 
template<>
size_t memSize (const AtomsCore::Box2f &data)
 
template<>
size_t memSize (const AtomsCore::Box2i &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Matrix > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Matrixf > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Matrix33 > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Matrix33f > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Quaternion > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Quaternionf > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Box3 > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Box3f > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Box2 > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::Box2f > &data)
 
template<>
size_t memSize (const std::vector< AtomsCore::MurmurHash3 > &data)
 
template<>
size_t memSize (const std::vector< std::string > &data)
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::ArrayMetadata &data)
 Serialization function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, AtomsCore::ArrayMetadata &data)
 Deserialization function.
 
std::stringstream & operator<< (std::stringstream &os, const AtomsUtils::Curve &obj)
 
ATOMSCORE_EXPORT void initMetadata ()
 Initialize metadata. More...
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::MapMetadata &data)
 Serialization function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, AtomsCore::MapMetadata &data)
 Deserialization function.
 
std::stringstream & operator<< (std::stringstream &os, const AtomsUtils::SampledCurve &obj)
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::Pose &pose)
 Serialize function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, AtomsCore::Pose &pose)
 Deserialize function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::Archive &ark)
 Serialization function.
 
template<class T >
Archiveoperator<< (Archive &os, const T &obj)
 
template<class T >
Archiveoperator>> (Archive &is, T &obj)
 
template<class T >
Archiveoperator<< (Archive &os, const std::vector< T > &obj)
 
template<class T >
Archiveoperator>> (Archive &os, std::vector< T > &obj)
 
template<>
Archiveoperator<< (Archive &os, const std::string &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector2 &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector2f &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector2i &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector3 &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector3f &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector3i &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector4 &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector4f &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Vector4i &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Euler &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Eulerf &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Quaternion &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Quaternionf &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Matrix &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Matrixf &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box3 &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box3f &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box3i &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box2 &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box2f &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::Box2i &obj)
 
template<>
Archiveoperator<< (Archive &os, const AtomsCore::MurmurHash3 &obj)
 
template<>
Archiveoperator<< (Archive &os, const std::vector< bool > &obj)
 
template<>
Archiveoperator>> (Archive &is, std::string &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector2 &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector2f &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector2i &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector3 &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector3f &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector3i &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector4 &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector4f &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Vector4i &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Euler &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Eulerf &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Quaternion &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Quaternionf &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Matrix &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Matrixf &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box3 &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box3f &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box3i &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box2 &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box2f &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::Box2i &obj)
 
template<>
Archiveoperator>> (Archive &os, AtomsCore::MurmurHash3 &obj)
 
template<>
Archiveoperator>> (Archive &os, std::vector< bool > &obj)
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const AtomsCore::Skeleton &skeleton)
 Serialization function.
 
ATOMSCORE_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, AtomsCore::Skeleton &skeleton)
 Deserialization function.
 
ATOMS_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const Atoms::Agent &agent)
 
ATOMS_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, Atoms::Agent &agent)
 
ATOMS_EXPORT AtomsCore::Archiveoperator<< (AtomsCore::Archive &os, const Atoms::AgentType &agentType)
 
ATOMS_EXPORT AtomsCore::Archiveoperator>> (AtomsCore::Archive &is, Atoms::AgentType &agentType)
 

Detailed Description

AtomsCore namespace.

Typedef Documentation

◆ PosePtr

Fwd declaration.

Pose pointer

Function Documentation

◆ degreesToRadians()

double AtomsCore::degreesToRadians ( double  fDeg)
inline

Fwd poser classs declaration.

convert degrees to radians

◆ initMetadata()

ATOMSCORE_EXPORT void AtomsCore::initMetadata ( )

Initialize metadata.

Initialize the metadata factory and register default metadata classes

◆ memSize() [1/2]

template<>
size_t AtomsCore::memSize ( const std::vector< bool > &  data)
inline

Memory size of bool vector.

Since the std implementation stores the bool vector as binary data in atoms we store as vector of shorts ot make it compatible between differe platforms and architectures

◆ memSize() [2/2]

template<class T >
size_t AtomsCore::memSize ( const T &  data)
inline

Single data memory size template function.

These template functions return the memory size of different ojects, they are used by the serialization functions