22 #ifndef vtkBase64Utilities_h
23 #define vtkBase64Utilities_h
25 #include "vtkIOCoreModule.h"
37 static void EncodeTriplet(
unsigned char i0,
unsigned char i1,
unsigned char i2,
unsigned char* o0,
38 unsigned char* o1,
unsigned char* o2,
unsigned char* o3);
43 static void EncodePair(
unsigned char i0,
unsigned char i1,
unsigned char* o0,
unsigned char* o1,
44 unsigned char* o2,
unsigned char* o3);
50 unsigned char i0,
unsigned char* o0,
unsigned char* o1,
unsigned char* o2,
unsigned char* o3);
66 const unsigned char* input,
unsigned long length,
unsigned char* output,
int mark_end = 0);
72 static int DecodeTriplet(
unsigned char i0,
unsigned char i1,
unsigned char i2,
unsigned char i3,
73 unsigned char* o0,
unsigned char* o1,
unsigned char* o2);
85 const unsigned char* input,
size_t inputLen,
unsigned char* output,
size_t outputLen);
base64 encode and decode utilities.
static int DecodeTriplet(unsigned char i0, unsigned char i1, unsigned char i2, unsigned char i3, unsigned char *o0, unsigned char *o1, unsigned char *o2)
Decode 4 bytes into 3 bytes.
~vtkBase64Utilities() override
static void EncodeTriplet(unsigned char i0, unsigned char i1, unsigned char i2, unsigned char *o0, unsigned char *o1, unsigned char *o2, unsigned char *o3)
Encode 3 bytes into 4 bytes.
static size_t DecodeSafely(const unsigned char *input, size_t inputLen, unsigned char *output, size_t outputLen)
Decode 4 bytes at a time from the input buffer and store the decoded stream into the output buffer.
static vtkBase64Utilities * New()
static unsigned long Encode(const unsigned char *input, unsigned long length, unsigned char *output, int mark_end=0)
Encode 'length' bytes from the input buffer and store the encoded stream into the output buffer.
static void EncodeSingle(unsigned char i0, unsigned char *o0, unsigned char *o1, unsigned char *o2, unsigned char *o3)
Encode 1 byte into 4 bytes.
static void EncodePair(unsigned char i0, unsigned char i1, unsigned char *o0, unsigned char *o1, unsigned char *o2, unsigned char *o3)
Encode 2 bytes into 4 bytes.
abstract base class for most VTK objects