libtrbase  1.0.2
Web server and task management solution.
sized_data.c File Reference
#include <stdarg.h>
#include <string.h>
#include <sys/types.h>
#include "trbase.h"
#include "tr/sized_data.h"
+ Include dependency graph for sized_data.c:

Go to the source code of this file.

Functions

static int sizedDataCtor (void *_this, va_list *params)
 
static void sizedDataDtor (void *_this)
 
 TR_INIT_IFACE (TR_Class, sizedDataCtor, sizedDataDtor, NULL)
 
 TR_CREATE_CLASS (TR_SizedData, NULL, NULL, TR_IF(TR_Class))
 

Detailed Description

Author
Georg Hopp

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Definition in file sized_data.c.

Function Documentation

static int sizedDataCtor ( void *  _this,
va_list *  params 
)
static

Definition at line 33 of file sized_data.c.

References memSegment::size, and TR_malloc().

34 {
35  TR_SizedData this = _this;
36  char * data = va_arg(*params, char *);
37 
38  this->size = va_arg(*params, size_t);
39 
40  if (data != NULL) {
41  this->data = TR_malloc(this->size);
42  memcpy(this->data, data, this->size);
43  }
44 
45  return 0;
46 }
void * TR_malloc(size_t)
Definition: memory.c:178
size_t size
Definition: memory.h:34

+ Here is the call graph for this function:

static void sizedDataDtor ( void *  _this)
static

Definition at line 50 of file sized_data.c.

References TR_MEM_FREE.

51 {
52  TR_MEM_FREE(((TR_SizedData)_this)->data);
53 }
#define TR_MEM_FREE(seg)
Definition: memory.h:26
TR_CREATE_CLASS ( TR_SizedData  ,
NULL  ,
NULL  ,
TR_IF(TR_Class)   
)
TR_INIT_IFACE ( TR_Class  ,
sizedDataCtor  ,
sizedDataDtor  ,
NULL   
)