7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin/* : : generated by proto : : */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin/***********************************************************************
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* This software is part of the ast package *
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner* Copyright (c) 1996-2010 AT&T Intellectual Property *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* and is licensed under the *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* Common Public License, Version 1.0 *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* by AT&T Intellectual Property *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* A copy of the License is available at *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* http://www.opensource.org/licenses/cpl1.0.txt *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* Information and Software Systems Research *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* AT&T Research *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* Florham Park NJ *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* Glenn Fowler <gsf@research.att.com> *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin* *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin***********************************************************************/
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin/*
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * Glenn Fowler
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * AT&T Research
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin *
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * checksum library interface
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#ifndef _SUM_H
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#if !defined(__PROTO__)
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#include <prototyped.h>
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#endif
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#if !defined(__LINKAGE__)
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define __LINKAGE__ /* 2004-08-11 transition */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#endif
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define _SUM_H
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#include <ast.h>
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SUM_SIZE (1<<0) /* print size too */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SUM_SCALE (1<<1) /* traditional size scale */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SUM_TOTAL (1<<2) /* print totals since sumopen */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SUM_LEGACY (1<<3) /* legacy field widths */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define _SUM_PUBLIC_ const char* name;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chintypedef struct Sumdata_s
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin{
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin uint32_t size;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin uint32_t num;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin __V_* buf;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin} Sumdata_t;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chintypedef struct Sum_s
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin{
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin _SUM_PUBLIC_
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#ifdef _SUM_PRIVATE_
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin _SUM_PRIVATE_
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#endif
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin} Sum_t;
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ Sum_t* sumopen __PROTO__((const char*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int suminit __PROTO__((Sum_t*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumblock __PROTO__((Sum_t*, const __V_*, size_t));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumdone __PROTO__((Sum_t*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumdata __PROTO__((Sum_t*, Sumdata_t*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumprint __PROTO__((Sum_t*, Sfio_t*, int, size_t));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumusage __PROTO__((Sfio_t*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chinextern __MANGLE__ int sumclose __PROTO__((Sum_t*));
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#endif