Skip to content
Snippets Groups Projects
Select Git revision
  • 588a5cccb5ac25a084e43f7b134b79f7c2cf6c17
  • master default
  • labcomm2014
  • labcomm2006
  • python_sig_hash
  • typedefs
  • anders.blomdell
  • typeref
  • pragma
  • compiler-refactoring
  • labcomm2013
  • v2014.6
  • v2015.0
  • v2014.5
  • v2014.4
  • v2006.0
  • v2014.3
  • v2014.2
  • v2014.1
  • v2014.0
  • v2013.0
21 results

PrettyPrint.jrag

Blame
  • jg.c 3.44 KiB
    #include "labcomm.h"
    #include "labcomm_private.h"
    #include "jg.h"
    
    static unsigned char signature_bytes_jg_foo[] = {
    // struct { 8 fields
    17, 
      8, 
      // double 'b'
      1, 
      98, 
      38, 
      // int 'c'
      1, 
      99, 
      35, 
      // int 'd'
      1, 
      100, 
      35, 
      // string 'e'
      1, 
      101, 
      39, 
      // boolean 'f'
      1, 
      102, 
      32, 
      // short 'g'
      1, 
      103, 
      34, 
      // long 'h'
      1, 
      104, 
      36, 
      // float 'i'
      1, 
      105, 
      37, 
    // }
    };
    struct labcomm_signature labcomm_signature_jg_foo = {
      LABCOMM_SAMPLE, "foo",
      (int (*)(struct labcomm_signature *, void *))labcomm_sizeof_jg_foo,
      sizeof(signature_bytes_jg_foo),
      signature_bytes_jg_foo,
      0
     };
    static void decode_jg_foo(
      struct labcomm_reader *r,
      void (*handle)(
        jg_foo *v,
        void *context
      ),
      void *context
    )
    {
      jg_foo v;
      v.b = labcomm_read_double(r);
      v.c = labcomm_read_int(r);
      v.d = labcomm_read_int(r);
      v.e = labcomm_read_string(r);
      v.f = labcomm_read_boolean(r);
      v.g = labcomm_read_short(r);
      v.h = labcomm_read_long(r);
      v.i = labcomm_read_float(r);
      handle(&v, context);
      {
        labcomm_memory_free(r->memory, 1, v.e);
      }
    }
    int labcomm_decoder_register_jg_foo(
      struct labcomm_decoder *d,
      void (*handler)(
        jg_foo *v,
        void *context
      ),
      void *context
    )
    {
      return labcomm_internal_decoder_register(
        d,
        &labcomm_signature_jg_foo,
        (labcomm_decoder_function)decode_jg_foo,
        (labcomm_handler_function)handler,
        context
      );
    }
    int labcomm_decoder_ioctl_jg_foo(
      struct labcomm_decoder *d,
      int ioctl_action,
      ...
    )
    {
      int result;
      va_list va;
      va_start(va, ioctl_action);
      result = labcomm_internal_decoder_ioctl(
        d, &labcomm_signature_jg_foo, 
        ioctl_action, va);
      va_end(va);
      return result;
    }
    static int encode_jg_foo(
      struct labcomm_writer *w,
      jg_foo *v
    )
    {
      int result = 0;
      result = labcomm_write_double(w, (*v).b);
      if (result != 0) { return result; }
      result = labcomm_write_int(w, (*v).c);
      if (result != 0) { return result; }
      result = labcomm_write_int(w, (*v).d);
      if (result != 0) { return result; }
      result = labcomm_write_string(w, (*v).e);
      if (result != 0) { return result; }
      result = labcomm_write_boolean(w, (*v).f);
      if (result != 0) { return result; }
      result = labcomm_write_short(w, (*v).g);
      if (result != 0) { return result; }
      result = labcomm_write_long(w, (*v).h);
      if (result != 0) { return result; }
      result = labcomm_write_float(w, (*v).i);
      if (result != 0) { return result; }
      return result;
    }
    int labcomm_encode_jg_foo(
    struct labcomm_encoder *e,
    jg_foo *v
    )
    {
    return labcomm_internal_encode(e, &labcomm_signature_jg_foo, (labcomm_encoder_function)encode_jg_foo, v);
    }
    int labcomm_encoder_register_jg_foo(
      struct labcomm_encoder *e
    )
    {
      return labcomm_internal_encoder_register(
        e,
        &labcomm_signature_jg_foo,
        (labcomm_encoder_function)encode_jg_foo
      );
    }
    int labcomm_encoder_ioctl_jg_foo(
      struct labcomm_encoder *e,
      int ioctl_action,
      ...
    )
    {
      int result;
      va_list va;
      va_start(va, ioctl_action);
      result = labcomm_internal_encoder_ioctl(
        e, &labcomm_signature_jg_foo, 
        ioctl_action, va);
      va_end(va);
      return result;
    }
    int labcomm_sizeof_jg_foo(jg_foo *v)
    {
      int result = labcomm_size_packed32(labcomm_signature_jg_foo.index);
      result += 0 + strlen((*v).e);
      result += 31;
      return result;
    }
    LABCOMM_CONSTRUCTOR void init_jg__signatures(void)
    {
      static int initialized = 0;
      if (initialized == 0) {
        initialized = 1;
        labcomm_set_local_index(&labcomm_signature_jg_foo);
      }
    }