SOFA plugin: SofaOpenCL  master
Open source framework for multi-physics simuation
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
sofa::helper Namespace Reference

Namespaces

 advancedtimer
 
 console
 
 io
 
 lifecycle
 
 logging
 
 messaging
 
 polygon_cube_intersection
 
 system
 
 visual
 

Classes

class  AdvancedTimer
 
class  ColorMap
 
class  kdTree
 
class  TimerData
 
class  TriangleOctree
 
class  BackTrace
 
class  BaseCreator
 
class  BaseCreator< sofa::gui::common::BaseViewer, sofa::gui::common::BaseViewerArgument & >
 
struct  BaseSelectableItem
 
class  BasicDispatcher
 
struct  CompareIndirect
 
class  Creator
 
class  CreatorFn
 
class  Decompose
 
struct  DeprecatedItem
 
class  Factory
 
class  FnDispatcher
 
struct  GenerateRigidInfo
 
struct  IndexOpenMP
 
class  integer_id
 
struct  IsEqual
 
struct  IsEqual< true >
 
struct  IsNull
 
struct  IsNull< true >
 
struct  Item
 
class  LCP
 
class  LocalBlock33
 
class  map_ptr_stable_compare
 
class  MarchingCubeUtility
 
class  MemoryManager
 
class  Monomial_LD
 
class  NameDecoder
 
struct  narrowing_error
 
class  NoArgument
 
class  OptionsGroup
 
class  OwnershipSPtr
 
class  Polynomial_LD
 
class  ptr_stable_compare
 
class  ptr_stable_compare< std::pair< T *, T * > >
 
class  ptr_stable_compare< T * >
 
class  ptr_stable_id
 
class  RandomGenerator
 
class  ReadAccessor
 
class  ReadAccessor< core::objectmodel::Data< T > >
 
class  ReadAccessor< FixedArrayLikeType >
 
class  ReadAccessor< vector_id< T, TIndex, CheckIndices, MemoryManager > >
 
class  ReadAccessor< VectorLikeType >
 
class  ReadAccessorFixedArray
 
class  ReadAccessorVector
 
class  ReadAccessorVectorId
 
class  Record
 
struct  ScopedAdvancedTimer
 
class  SelectableItem
 
class  SingletonFnDispatcher
 
class  SofaViewerCreator
 
class  SofaViewerFactory
 
class  StepData
 
class  TagFactory
 
class  TagList
 
class  TriangleOctreeRoot
 
class  TSimpleTimer
 
class  TypeInfo
 
class  Utils
 
class  vector_id
 
class  WriteAccessor
 
class  WriteAccessor< core::objectmodel::Data< T > >
 
class  WriteAccessor< FixedArrayLikeType >
 
class  WriteAccessor< vector_id< T, TIndex, CheckIndices, MemoryManager > >
 
class  WriteAccessor< VectorLikeType >
 
class  WriteAccessorFixedArray
 
class  WriteAccessorVector
 
class  WriteAccessorVectorId
 
class  WriteOnlyAccessor
 
class  WriteOnlyAccessor< core::objectmodel::Data< T > >
 
class  WriteOnlyAccessor< VectorLikeType >
 
class  ReadAccessor< gpu::opencl::OpenCLVector< T > >
 
class  WriteAccessor< gpu::opencl::OpenCLVector< T > >
 

Typedefs

typedef sofa::helper::system::thread::ctime_t ctime_t
 
typedef sofa::helper::system::thread::CTime CTime
 
typedef const char *(* integer_id_name) ()
 
typedef SReal FemClipsReal
 
typedef TSimpleTimer SimpleTimer
 

Functions

WriteAccessor< core::objectmodel::Data< T > > getWriteAccessor (core::objectmodel::Data< T > &data)
 
ReadAccessor< core::objectmodel::Data< T > > getReadAccessor (const core::objectmodel::Data< T > &data)
 
WriteOnlyAccessor< core::objectmodel::Data< T > > getWriteOnlyAccessor (core::objectmodel::Data< T > &data)
 
 SOFA_THREAD_SPECIFIC_PTR (std::stack< AdvancedTimer::IdTimer >, curTimerThread)
 
 SOFA_THREAD_SPECIFIC_PTR (type::vector< Record >, curRecordsThread)
 
std::stack< AdvancedTimer::IdTimer > & getCurTimer ()
 
type::vector< Record > * getCurRecords ()
 
void setCurRecords (type::vector< Record > *ptr)
 
void printVal (std::ostream &out, double v)
 
void printNoVal (std::ostream &out)
 
void printVal (std::ostream &out, double v, int niter)
 
void printTime (std::ostream &out, ctime_t t, int niter=1)
 
std::string getVal (double v)
 
std::string getNoVal ()
 
std::string getVal (double v, int niter)
 
std::string getTime (ctime_t t, int niter=1)
 
double strToDouble (std::string const &stringToConvert, std::size_t const precision)
 
int dsyevc3 (const type::Mat< 3, 3, Real > &A, type::Vec< 3, Real > &w)
 
void dsytrd3 (const type::Mat< 3, 3, Real > &A, type::Mat< 3, 3, Real > &Q, type::Vec< 3, Real > &d, type::Vec< 3, Real > &e)
 
int dsyevq3 (const type::Mat< 3, 3, Real > &A, type::Mat< 3, 3, Real > &Q, type::Vec< 3, Real > &w)
 
void dsyev2 (Real A, Real B, Real C, Real &rt1, Real &rt2, Real &cs, Real &sn)
 
std::vector< std::tuple< std::string, SReal > > SOFA_HELPER_API getClosestMatch (const std::string &needle, const std::vector< std::string > &haystack, const Size numEntries=5, const SReal threshold=0.5_sreal)
 
SOFA_HELPER_API std::string gettypename (const std::type_info &t)
 
SOFA_HELPER_API std::string & getFactoryLog ()
 
SOFA_HELPER_API void printFactoryLog (std::ostream &out)
 
template SOFA_HELPER_API void logFactoryRegister< std::string > (const std::string &baseclass, const std::string &classname, std::string key, bool multi)
 
void logFactoryRegister (const std::string &baseclass, const std::string &classname, TKey key, bool multi)
 
template SOFA_HELPER_API void logFactoryRegister (const std::string &baseclass, const std::string &classname, std::string key, bool multi)
 
void generateRigid (Rigid3MassType &mass, type::Vec3 &center, const helper::io::Mesh *mesh)
 
void generateRigid (Rigid3MassType &mass, type::Vec3 &center, io::Mesh *mesh, SReal density, const type::Vec3 &scale=type::Vec3(1, 1, 1), const type::Vec3 &rotation=type::Vec3(0, 0, 0))
 
bool generateRigid (Rigid3MassType &mass, type::Vec3 &center, const std::string &meshFilename, SReal density, const type::Vec3 &scale=type::Vec3(1, 1, 1), const type::Vec3 &rotation=type::Vec3(0, 0, 0))
 
void generateRigid (GenerateRigidInfo &res, io::Mesh *mesh, std::string const &meshName, SReal density, const type::Vec3 &scale=type::Vec3(1, 1, 1), const type::Vec3 &rotation=type::Vec3(0, 0, 0))
 
bool generateRigid (GenerateRigidInfo &res, const std::string &meshFilename, SReal density, const type::Vec3 &scale=type::Vec3(1, 1, 1), const type::Vec3 &rotation=type::Vec3(0, 0, 0))
 
SOFA_HELPER_API void init ()
 
SOFA_HELPER_API bool isInitialized ()
 
SOFA_HELPER_API void cleanup ()
 
SOFA_HELPER_API bool isCleanedUp ()
 
SOFA_HELPER_API void printUninitializedLibraryWarning (const std::string &library, const std::string &initFunction)
 
SOFA_HELPER_API void printLibraryNotCleanedUpWarning (const std::string &library, const std::string &cleanupFunction)
 
void SOFA_HELPER_API vector_access_failure (const void *vec, unsigned size, unsigned i, const std::type_info &type, const char *tindex)
 
int solveLCP (int dim, SReal *q, SReal **M, SReal *res)
 
void printSyst (SReal *q, SReal **M, int *base, SReal **mat, int dim)
 
void printLCP (SReal *q, SReal **M, int dim)
 
void printLCP (SReal *q, SReal **M, SReal *f, int dim)
 
void resultToString (ostream &s, SReal *f, int dim)
 
void projection (LCP &fineLevel, LCP &coarseLevel, int nbContactsCoarse, const std::vector< int > &projectionTable, const std::vector< int > &projectionConstraints, std::vector< SReal > &projectionValues, std::vector< bool > &contact_is_projected, bool verbose)
 
void prolongation (LCP &fineLevel, LCP &coarseLevel, const std::vector< int > &projectionTable, const std::vector< int > &projectionConstraints, std::vector< SReal > &projectionValues, std::vector< bool > &contact_is_projected, bool verbose)
 
int nlcp_multiGrid_2levels (int dim, SReal *dfree, SReal **W, SReal *f, SReal mu, SReal tol, int numItMax, bool useInitialF, std::vector< int > &contact_group, unsigned int num_group, std::vector< int > &constraint_group, std::vector< SReal > &constraint_group_fact, bool verbose, std::vector< SReal > *residuals1, std::vector< SReal > *residuals2)
 
int nlcp_multiGrid_Nlevels (int dim, SReal *dfree, SReal **W, SReal *f, SReal mu, SReal tol, int numItMax, bool useInitialF, std::vector< std::vector< int > > &contact_group_hierarchy, std::vector< unsigned int > Tab_num_group, std::vector< std::vector< int > > &constraint_group_hierarchy, std::vector< std::vector< SReal > > &constraint_group_fact_hierarchy, bool verbose, std::vector< SReal > *residualsN, std::vector< SReal > *residualLevels, std::vector< SReal > *violations)
 
int nlcp_multiGrid (int dim, SReal *dfree, SReal **W, SReal *f, SReal mu, SReal tol, int numItMax, bool useInitialF, SReal **W_coarse, std::vector< int > &contact_group, unsigned int num_group, bool verbose)
 
int nlcp_gaussseidel (int dim, SReal *dfree, SReal **W, SReal *f, SReal mu, SReal tol, int numItMax, bool useInitialF, bool verbose, SReal minW, SReal maxF, std::vector< SReal > *residuals, std::vector< SReal > *violations)
 
int nlcp_gaussseidelTimed (int dim, SReal *dfree, SReal **W, SReal *f, SReal mu, SReal tol, int numItMax, bool useInitialF, SReal timeout, bool verbose)
 
void gaussSeidelLCP1 (int dim, FemClipsReal *q, FemClipsReal **M, FemClipsReal *res, SReal tol, int numItMax, SReal minW, SReal maxF, std::vector< SReal > *residuals)
 
SOFA_HELPER_API void set3Dof (SReal *vector, int index, SReal vx, SReal vy, SReal vz)
 
SOFA_HELPER_API void add3Dof (SReal *vector, int index, SReal vx, SReal vy, SReal vz)
 
SOFA_HELPER_API SReal normError (SReal f1x, SReal f1y, SReal f1z, SReal f2x, SReal f2y, SReal f2z)
 
SOFA_HELPER_API SReal absError (SReal f1x, SReal f1y, SReal f1z, SReal f2x, SReal f2y, SReal f2z)
 
SOFA_HELPER_API void resultToString (std::ostream &s, SReal *f, int dim)
 
Eigen::Matrix< Real, NumRows, NumCols > eigenMat (const type::Mat< NumRows, NumCols, Real > &mat)
 
type::Mat< NumRows, NumCols, Real > sofaMat (const Eigen::Matrix< Real, NumRows, NumCols > &emat)
 
type::Vec< NumRows, Real > sofaVec (const Eigen::Matrix< Real, NumRows, 1 > &evec)
 
Eigen::Matrix< Real, NumRows, 1 > eigenVec (const type::Vec< NumRows, Real > &vec)
 
constexpr T narrow_cast_nocheck (U &&u) noexcept
 
constexpr T narrow_cast_check (U u)
 
constexpr T narrow_cast (U &&u)
 
std::ostream & operator<< (std::ostream &on, const OptionsGroup &m_trick)
 
std::istream & operator>> (std::istream &in, OptionsGroup &m_trick)
 
std::ostream & operator<< (std::ostream &out, const Monomial_LD< FReal, FN > &m_monomial)
 
std::istream & operator>> (std::istream &in, Monomial_LD< FReal, FN > &m_monomial)
 
std::ostream & operator<< (std::ostream &stream, const Polynomial_LD< FReal, FN > &m_polynomial)
 
std::istream & operator>> (std::istream &stream, Polynomial_LD< FReal, FN > &m_polynomial)
 
Monomial_LD< FReal, FN > & operator* (const FReal &alpha, Monomial_LD< FReal, FN > &r)
 
Polynomial_LD< FReal, FN > & operator* (const FReal &alpha, Polynomial_LD< FReal, FN > &r)
 
Polynomial_LD< FReal, FN > & operator* (const Monomial_LD< FReal, FN > &a, Polynomial_LD< FReal, FN > &r)
 
void srand (unsigned seed)
 
int irand ()
 
double drand ()
 
double drandpos (double max)
 
double drand (double max)
 
double drand (double min, double max)
 
int rfloor (real r)
 
int rnear (real r)
 
int rceil (double r)
 
real rabs (real r)
 
real rmin (real r, real s)
 
real rmax (real r, real s)
 
rlerp (const T &a, const T &b, float f)
 
rsqrt (const T &a)
 
double rsqrt (const double &a)
 
long double rsqrt (const long double &a)
 
const T SQR (const T &a)
 
const T SIGN (const T &a, const T &b)
 
void SWAP (T &a, T &b)
 
void shft3 (double &a, double &b, double &c, const double d)
 
round (const T &x)
 
factorial (T Number)
 
rclamp (const T &value, const T &low, const T &high)
 
bool isClamped (const T &value, const T &low, const T &high)
 
sign (const T &v)
 
sign0 (const T &v)
 
bool isEqual (T x, T y, T threshold=(std::numeric_limits< T >::epsilon)())
 
bool isNull (T x, T threshold=(std::numeric_limits< T >::epsilon)())
 
double rcos (double x)
 
float rcos (float x)
 
double rsin (double x)
 
float rsin (float x)
 
rcos (const T &a)
 
rsin (const T &a)
 
std::ostream & operator<< (std::ostream &out, const BaseSelectableItem &selectableItem)
 
std::istream & operator>> (std::istream &in, BaseSelectableItem &selectableItem)
 
type::vector< unsigned > sortedPermutation (const Container &values)
 
std::wstring widenString (const std::string &s)
 
std::string narrowString (const std::wstring &ws)
 
std::string downcaseString (const std::string &s)
 
std::string upcaseString (const std::string &s)
 
std::vector< std::string > split (const std::string &s, char delimiter)
 
char * getAStringCopy (const char *c)
 
void replaceAll (std::string &str, const std::string &search, const std::string &replace)
 
bool ends_with (const std::string &suffix, const std::string &full)
 
bool starts_with (const std::string &prefix, const std::string &full)
 
std::string safeCharToString (const char *c)
 
std::string_view removeTrailingCharacter (std::string_view sv, char character)
 
std::string_view removeTrailingCharacters (std::string_view sv, std::initializer_list< char > characters)
 
std::string join (InputIt first, InputIt last, const S &delim)
 
std::string join (InputIt first, InputIt last, UnaryFunction f, const S &delim)
 
std::string join (const Container &elems, const S &delim)
 
unsigned int choose_next (SReal x, SReal y, SReal z, unsigned int a, unsigned int b, unsigned int c)
 

Variables

 NDefaultColorMapSchemes
 
std::map< AdvancedTimer::IdTimer, TimerDatatimers
 
std::atomic< int > activeTimers
 
AdvancedTimer::SyncCallBack syncCallBack
 
void * syncCallBackData
 
template class SOFA_HELPER_API Decompose< double >
 
template class SOFA_HELPER_API Decompose< float >
 
const int MarchingCubeEdgeTable [256]
 
const int MarchingCubeFaceTable [256]
 
const int MarchingCubeTriTable [256][16]
 
constexpr bool forceNarrowCastChecking
 
template class SOFA_HELPER_API Monomial_LD< double, 1 >
 
template class SOFA_HELPER_API Monomial_LD< double, 2 >
 
template class SOFA_HELPER_API Monomial_LD< double, 3 >
 
template class SOFA_HELPER_API Monomial_LD< double, 4 >
 
template class SOFA_HELPER_API Monomial_LD< double, 5 >
 
template class SOFA_HELPER_API Polynomial_LD< double, 1 >
 
template class SOFA_HELPER_API Polynomial_LD< double, 2 >
 
template class SOFA_HELPER_API Polynomial_LD< double, 3 >
 
template class SOFA_HELPER_API Polynomial_LD< double, 4 >
 
template class SOFA_HELPER_API Polynomial_LD< double, 5 >
 
std::mutex kMutex
 
TagList kTagList