Visible to Intel only — GUID: GUID-858D877B-4A91-4575-AED3-92080EA0E47E
Visible to Intel only — GUID: GUID-858D877B-4A91-4575-AED3-92080EA0E47E
Set_BN
Defines the sign and value of the context.
Syntax
IppStatus ippsSet_BN(IppsBigNumSGN sgn, int length, const Ipp32u* pData, IppsBigNumState* pBN);
Include Files
ippcp.h
Parameters
sgn |
Sign of IppsBigNumState *x. |
length |
Array length of the input data. |
pData |
Pointer to the data array. |
pBN |
On output, the context IppsBigNumState updated with the input data. |
Description
The function defines the sign and value for IppsBigNumState *x with the specified inputs IppsBigNumSGN sgn and const Ipp32u *pData.
Return Values
ippStsNoErr |
Indicates no error. Any other value indicates an error or warning. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers is NULL. |
ippStsLengthErr |
Indicates an error condition if length is less than or equal to 0. |
ippStsOutOfRangeErr |
Indicates an error condition if length is more than the size of IppsBigNumState *pBN. |
ippStsBadArgErr |
Indicates an error condition if the big number is set to zero with the negative sign. |
Example
The code example below shows how to create a big number.
IppsBigNumState* New_BN(int size, const Ipp32u* pData=0){
// get the size of the Big Number context
int ctxSize;
ippsBigNumGetSize(size, &ctxSize);
// allocate the Big Number context
IppsBigNumState* pBN = (IppsBigNumState*) (new Ipp8u [ctxSize] );
// and initialize one
ippsBigNumInit(size, pBN);
// if any data was supplied, then set up the Big Number value
if(pData)
ippsSet_BN(IppsBigNumPOS, size, pData, pBN);
// return pointer to the Big Number context for future use
return pBN;
}