HIK2016/humanik/hikstream.h Source File

hikstream.h
Go to the documentation of this file.
1 
5 /**************************************************************************************
6 
7 Copyright (C) 2009 Autodesk, Inc.
8 All Rights Reserved.
9 
10 The coded instructions, statements, computer programs, and/or related material (collectively "Data")
11 in these files contain unpublished information proprietary to Autodesk, Inc., ("Autodesk") which is
12 protected by Canada and United States of America federal copyright law and by international treaties.
13 
14 The Data may not be disclosed or distributed to third parties, in whole or in part, without the prior
15 written consent of Autodesk.
16 
17 THE DATA IS PROVIDED "AS IS" AND WITHOUT WARRANTY. ALL WARRANTIES ARE EXPRESSLY EXCLUDED AND DISCLAIMED.
18 AUTODESK MAKES NO WARRANTY OF ANY KIND WITH RESPECT TO THE DATA, EXPRESS, IMPLIED OR ARISING BY CUSTOM
19 OR TRADE USAGE, AND DISCLAIMS ANY IMPLIED WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR
20 FITNESS FOR A PARTICULAR PURPOSE OR USE. WITHOUT LIMITING THE FOREGOING, AUTODESK DOES NOT WARRANT THAT
21 THE OPERATION OF THE DATA WILL BE UNINTERRUPTED OR ERROR FREE.
22 
23 IN NO EVENT SHALL AUTODESK, ITS AFFILIATES, PARENT COMPANIES, LICENSORS OR SUPPLIERS ("AUTODESK GROUP")
24 BE LIABLE FOR ANY LOSSES, DAMAGES OR EXPENSES OF ANY KIND (INCLUDING WITHOUT LIMITATION PUNITIVE OR
25 MULTIPLE DAMAGES OR OTHER SPECIAL, DIRECT, INDIRECT, EXEMPLARY, INCIDENTAL, LOSS OF PROFITS, REVENUE
26 OR DATA, COST OF COVER OR CONSEQUENTIAL LOSSES OR DAMAGES OF ANY KIND), HOWEVER CAUSED, AND REGARDLESS
27 OF THE THEORY OF LIABILITY, WHETHER DERIVED FROM CONTRACT, TORT (INCLUDING, BUT NOT LIMITED TO,
28 NEGLIGENCE), OR OTHERWISE, ARISING OUT OF OR RELATING TO THE DATA OR ITS USE OR ANY OTHER PERFORMANCE,
29 WHETHER OR NOT AUTODESK HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.
30 
31 **************************************************************************************/
32 
33 #ifndef _HIK_STREAM_
34 #define _HIK_STREAM_
35 
36 #include "humanik.h"
37 
38 #ifdef __cplusplus
39 extern "C" {
40 #endif
41 
42 
62  HIKCharacterDefinition* pCharacterDefinition,
63  const char* pStream,
64  size_t pStreamSize,
65  HIKMalloc pMalloc,
66  HIKFree pFree,
67  const char* pValidationString
68  );
69 
83  size_t* pStreamSize,
84  const HIKCharacterDefinition* pCharacterDefinition,
85  const HIKCharacter* pCharacter,
86  bool pBigEndian,
87  HIKMalloc pMalloc,
88  HIKFree pFree,
89  const char* pValidationString
90  );
91 
92 
93 #ifdef __cplusplus
94 }
95 #endif
96 
97 #endif
void(* HIKFree)(void *)
Memory de-allocator function.
Definition: humanik.h:393
#define HIK_EXPORT
Definition: humanik.h:56
char * HIKWriteToStream(size_t *pStreamSize, const HIKCharacterDefinition *pCharacterDefinition, const HIKCharacter *pCharacter, bool pBigEndian, HIKMalloc pMalloc, HIKFree pFree, const char *pValidationString)
Writes the specified HIKCharacterDefinition and HIKCharacter to a byte stream.
void *(* HIKMalloc)(size_t)
Memory allocator function.
Definition: humanik.h:388
Defines which Nodes are to be used by an HIKCharacter.
Defines a character to be used with HumanIK.
HIKCharacter * HIKReadFromStream(HIKCharacterDefinition *pCharacterDefinition, const char *pStream, size_t pStreamSize, HIKMalloc pMalloc, HIKFree pFree, const char *pValidationString)
Creates a new HIKCharacterDefinition and HIKCharacter from the specified binary stream.
#define HIK_API
Definition: humanik.h:60