Eigen::internal::meta_sqrt< Y, InfX, SupX, Done > Class Template Reference

#include <Meta.h>

Public Types

enum  { ret = meta_sqrt<Y, NewInf, NewSup>::ret }
 

Private Types

enum  { MidX = (InfX + SupX) / 2 }
 

Detailed Description

template<int Y, int InfX = 0, int SupX = ((Y == 1) ? 1 : Y / 2), bool Done = ((SupX - InfX) <= 1 || ((SupX * SupX <= Y) && ((SupX + 1) * (SupX + 1) > Y)))>
class Eigen::internal::meta_sqrt< Y, InfX, SupX, Done >

In short, it computes int(sqrt(Y)) with Y an integer. Usage example:

Member Enumeration Documentation

◆ anonymous enum

template<int Y, int InfX = 0, int SupX = ((Y == 1) ? 1 : Y / 2), bool Done = ((SupX - InfX) <= 1 || ((SupX * SupX <= Y) && ((SupX + 1) * (SupX + 1) > Y)))>
anonymous enum
private
Enumerator
MidX 
465  {
466  MidX = (InfX + SupX) / 2,
467  TakeInf = MidX * MidX > Y ? 1 : 0,
468  NewInf = int(TakeInf) ? InfX : int(MidX),
469  NewSup = int(TakeInf) ? int(MidX) : SupX
470  };
@ MidX
Definition: Meta.h:466
return int(ret)+1
const char Y
Definition: test/EulerAngles.cpp:32

◆ anonymous enum

template<int Y, int InfX = 0, int SupX = ((Y == 1) ? 1 : Y / 2), bool Done = ((SupX - InfX) <= 1 || ((SupX * SupX <= Y) && ((SupX + 1) * (SupX + 1) > Y)))>
anonymous enum
Enumerator
ret 

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