zeus Namespace Reference

Classes

class  AbstractFunction
 
class  AbstractFunctionTypeClass
 
class  AbstractFunctionTypeDirect
 
class  Buffer
 
class  BufferAnswer
 
class  BufferCall
 
class  BufferData
 
class  BufferParameter
 
class  Client
 
class  ClientProperty
 
class  File
 
class  FileServer
 
class  Future
 
class  Future< void >
 
class  FutureBase
 
class  FutureData
 
struct  headerBin
 
class  ParamType
 
class  RemoteProcessCall
 
class  Service
 
class  ServiceRemote
 
class  ServiceType
 
class  WebServer
 

Typedefs

using ActionAsyncClient = std::function< bool(WebServer *_interface, const uint32_t &_serviceId, uint64_t _transactionId, uint64_t _part)>
 

Functions

bool checkOrderFunctionParameter ()
 
template<class ZEUS_CLASS_TYPE , class ZEUS_RETURN , class... ZEUS_TYPES>
void executeClassCall (ememory::SharedPtr< zeus::WebServer > _interfaceClient, ememory::SharedPtr< zeus::BufferParameter > _obj, ZEUS_CLASS_TYPE *_pointer, ZEUS_RETURN(ZEUS_CLASS_TYPE::*_func)(ZEUS_TYPES...))
 
template<class ZEUS_CLASS_TYPE , class... ZEUS_TYPES>
void executeClassCall (ememory::SharedPtr< zeus::WebServer > _interfaceClient, ememory::SharedPtr< zeus::BufferParameter > _obj, ZEUS_CLASS_TYPE *_pointer, void(ZEUS_CLASS_TYPE::*_func)(ZEUS_TYPES...))
 
template<typename ZEUS_RETURN , class ZEUS_CLASS_TYPE , typename... ZEUS_TYPES>
AbstractFunctioncreateAbstractFunctionClass (const std::string &_name, ZEUS_RETURN(ZEUS_CLASS_TYPE::*_fffp)(ZEUS_TYPES...))
 
template<class ZEUS_RETURN , class... ZEUS_TYPES>
void executeCall (ememory::SharedPtr< zeus::WebServer > _interfaceClient, ememory::SharedPtr< zeus::BufferParameter > _obj, ZEUS_RETURN(*_func)(ZEUS_TYPES...))
 
template<class... ZEUS_TYPES>
void executeCall (ememory::SharedPtr< zeus::WebServer > _interfaceClient, ememory::SharedPtr< zeus::BufferParameter > _obj, void(*_func)(ZEUS_TYPES...))
 
template<typename ZEUS_RETURN , typename... ZEUS_TYPES>
zeus::AbstractFunctioncreateAbstractFunctionDirect (const std::string &_name, ZEUS_RETURN(*_fffp)(ZEUS_TYPES...))
 
void addType (std::vector< uint8_t > &_data, zeus::ParamType _type)
 
void addTypeObject (std::vector< uint8_t > &_data, const std::string _type)
 
void addTypeRaw (std::vector< uint8_t > &_data)
 
std::string getMineType (const std::string &_extention)
 
std::string getExtention (const std::string &_mineType)
 
template<class ZEUS_TYPE >
const ParamTypecreateType ()
 
bool checkCompatibility (const ParamType &_first, const ParamType &_second)
 
ememory::SharedPtr< zeus::BufferCallcreateBaseCall (uint64_t _transactionId, const std::string &_functionName, const uint32_t &_serviceId=0)
 
void createParam (int32_t _paramId, ememory::SharedPtr< zeus::BufferCall > _obj)
 
template<class ZEUS_TYPE , class... _ARGS>
void createParam (int32_t _paramId, ememory::SharedPtr< zeus::BufferCall > _obj, const ZEUS_TYPE &_param, _ARGS &&... _args)
 
template<class... _ARGS>
void createParam (int32_t _paramId, ememory::SharedPtr< zeus::BufferCall > _obj, const char *_param, _ARGS &&... _args)
 
template<class... _ARGS>
ememory::SharedPtr< zeus::BufferCallcreateCall (uint64_t _transactionId, const std::string &_functionName, _ARGS &&... _args)
 
template<class... _ARGS>
ememory::SharedPtr< zeus::BufferCallcreateCallService (uint64_t _transactionId, const uint32_t &_serviceName, const std::string &_functionName, _ARGS &&... _args)
 
void init (int _argc, const char **_argv)
 
void unInit ()
 
bool isInit ()
 

Variables

const uint16_t paramTypeObject
 
const uint16_t paramTypeRaw
 

Detailed Description

Main zeus library namespace.

Function Documentation

§ addType()

void zeus::addType ( std::vector< uint8_t > &  _data,
zeus::ParamType  _type 
)

Add a parameter generic type in the buffer.

Parameters
[in]_dataBuffer to add type
[in]_typegeneric type to add

§ addTypeObject()

void zeus::addTypeObject ( std::vector< uint8_t > &  _data,
const std::string  _type 
)

Add a parameter object type in the buffer.

Parameters
[in]_dataBuffer to add type
[in]_typestring of the type to add

§ addTypeRaw()

void zeus::addTypeRaw ( std::vector< uint8_t > &  _data)

Add a parameter RAW type in the buffer.

Parameters
[in]_dataBuffer to add type

§ checkCompatibility()

bool zeus::checkCompatibility ( const ParamType _first,
const ParamType _second 
)

Check the compatibility of 2 parameter type.

Parameters
[in]_firstFirst parameter to check
[in]_secondSecond parameter to check
Returns
Return true if parameters are compatible (thay can be converted)

§ checkOrderFunctionParameter()

bool zeus::checkOrderFunctionParameter ( )

check if the compilater order the function element call in order or backOrder

§ createAbstractFunctionClass()

template<typename ZEUS_RETURN , class ZEUS_CLASS_TYPE , typename... ZEUS_TYPES>
AbstractFunction* zeus::createAbstractFunctionClass ( const std::string &  _name,
ZEUS_RETURN(ZEUS_CLASS_TYPE::*)(ZEUS_TYPES...)  _fffp 
)

Create a function information with the function type.

Parameters
[in]_nameName of the function
[in]_fffpPointer of the function
Returns
Abstract type of the function

§ createAbstractFunctionDirect()

template<typename ZEUS_RETURN , typename... ZEUS_TYPES>
zeus::AbstractFunction* zeus::createAbstractFunctionDirect ( const std::string &  _name,
ZEUS_RETURN(*)(ZEUS_TYPES...)  _fffp 
)

Create a function information with the function type.

Parameters
[in]_nameName of the function
[in]_fffpPointer of the function
Returns
Abstract type of the function

§ createBaseCall()

ememory::SharedPtr<zeus::BufferCall> zeus::createBaseCall ( uint64_t  _transactionId,
const std::string &  _functionName,
const uint32_t &  _serviceId = 0 
)
Parameters
[in]

§ createCall()

template<class... _ARGS>
ememory::SharedPtr<zeus::BufferCall> zeus::createCall ( uint64_t  _transactionId,
const std::string &  _functionName,
_ARGS &&...  _args 
)
Parameters
[in]

§ createCallService()

template<class... _ARGS>
ememory::SharedPtr<zeus::BufferCall> zeus::createCallService ( uint64_t  _transactionId,
const uint32_t &  _serviceName,
const std::string &  _functionName,
_ARGS &&...  _args 
)
Parameters
[in]

§ createParam() [1/3]

void zeus::createParam ( int32_t  _paramId,
ememory::SharedPtr< zeus::BufferCall _obj 
)
Parameters
[in]

§ createParam() [2/3]

template<class ZEUS_TYPE , class... _ARGS>
void zeus::createParam ( int32_t  _paramId,
ememory::SharedPtr< zeus::BufferCall _obj,
const ZEUS_TYPE &  _param,
_ARGS &&...  _args 
)
Parameters
[in]

§ createParam() [3/3]

template<class... _ARGS>
void zeus::createParam ( int32_t  _paramId,
ememory::SharedPtr< zeus::BufferCall _obj,
const char *  _param,
_ARGS &&...  _args 
)
Parameters
[in]

§ createType()

template<class ZEUS_TYPE >
const ParamType& zeus::createType ( )

Template to automaticly get the type of an generic std type without create a dynamic element.

Returns
generic parameter created

§ executeCall() [1/2]

template<class ZEUS_RETURN , class... ZEUS_TYPES>
void zeus::executeCall ( ememory::SharedPtr< zeus::WebServer _interfaceClient,
ememory::SharedPtr< zeus::BufferParameter _obj,
ZEUS_RETURN(*)(ZEUS_TYPES...)  _func 
)

Execute a call on the global function with a return value.

Parameters
[in]_interfaceClientWeb interface to send data
[in]_objBuffer input call (that have parameter already check)
[in]_funcpointer on the function to call

§ executeCall() [2/2]

template<class... ZEUS_TYPES>
void zeus::executeCall ( ememory::SharedPtr< zeus::WebServer _interfaceClient,
ememory::SharedPtr< zeus::BufferParameter _obj,
void(*)(ZEUS_TYPES...)  _func 
)

Execute a call on the global function with NO return value.

Parameters
[in]_interfaceClientWeb interface to send data
[in]_objBuffer input call (that have parameter already check)
[in]_funcpointer on the function to call

§ executeClassCall() [1/2]

template<class ZEUS_CLASS_TYPE , class ZEUS_RETURN , class... ZEUS_TYPES>
void zeus::executeClassCall ( ememory::SharedPtr< zeus::WebServer _interfaceClient,
ememory::SharedPtr< zeus::BufferParameter _obj,
ZEUS_CLASS_TYPE *  _pointer,
ZEUS_RETURN(ZEUS_CLASS_TYPE::*)(ZEUS_TYPES...)  _func 
)

Execute a call on the function with a return value.

Parameters
[in]_interfaceClientWeb interface to send data
[in]_objBuffer input call (that have parameter already check)
[in]_pointerPointer on the class to call
[in]_funcpointer on the function to call

§ executeClassCall() [2/2]

template<class ZEUS_CLASS_TYPE , class... ZEUS_TYPES>
void zeus::executeClassCall ( ememory::SharedPtr< zeus::WebServer _interfaceClient,
ememory::SharedPtr< zeus::BufferParameter _obj,
ZEUS_CLASS_TYPE *  _pointer,
void(ZEUS_CLASS_TYPE::*)(ZEUS_TYPES...)  _func 
)

Execute a call on the function with NO return value.

Parameters
[in]_interfaceClientWeb interface to send data
[in]_objBuffer input call (that have parameter already check)
[in]_pointerPointer on the class to call
[in]_funcpointer on the function to call

§ getExtention()

std::string zeus::getExtention ( const std::string &  _mineType)

Retrive the extention of a file with his mine type.

Parameters
[in]_mineTypeMine tipe in http format
Returns
file extention (without the '.')

§ getMineType()

std::string zeus::getMineType ( const std::string &  _extention)

get the mine type with the file extention

Parameters
[in]_extentionfile extention (without the '.')
Returns
The generic mine tipe in http format

§ init()

void zeus::init ( int  _argc,
const char **  _argv 
)

Initialize zeus.

Parameters
[in]_argcNumber of argument list
[in]_argvList of arguments

§ isInit()

bool zeus::isInit ( )

Check if the library zeus is initialized.

Returns
bool value to chek if initialize ot not

§ unInit()

void zeus::unInit ( )

un-Initialize zeus

Variable Documentation

§ paramTypeObject

const uint16_t zeus::paramTypeObject

van not automatic create a type with the string named object

§ paramTypeRaw

const uint16_t zeus::paramTypeRaw

Raw type (special case of data)