Parent Directory | Revision Log

Revision **54** -
(**show annotations**)
(**download**)
(**as text**)

*Tue Aug 2 11:20:09 2005 UTC*
(19 years, 2 months ago)
by *jds*

File MIME type: text/x-chdr

File size: 5615 byte(s)

File MIME type: text/x-chdr

File size: 5615 byte(s)

Manual rework of doxygen comments in all headers. - Added @file comment to all headers. - Added parameter names to all function declarations in headers. - Corrected comment referencing where necessary. - Split some comments which documented blocks of declarations. - Converted notes about required work into @todo comments so doxygen can generate a todo list. Minor bug fixes.

1 | /* |

2 | * Ascend Instance Atom Size Functions. |

3 | * by Tom Epperly & Ben Allan |

4 | * 8/16/89 |

5 | * Version: $Revision: 1.4 $ |

6 | * Version control file: $RCSfile: atomsize.h,v $ |

7 | * Date last modified: $Date: 1997/07/18 12:28:03 $ |

8 | * Last modified by: $Author: mthomas $ |

9 | * |

10 | * This file is part of the Ascend Language Interpreter. |

11 | * |

12 | * Copyright (C) 1996 Benjamin Andrew Allan |

13 | * based on instance.c |

14 | * Copyright (C) 1990, 1993, 1994 Thomas Guthrie Epperly |

15 | * |

16 | * The Ascend Language Interpreter is free software; you can redistribute |

17 | * it and/or modify it under the terms of the GNU General Public License as |

18 | * published by the Free Software Foundation; either version 2 of the |

19 | * License, or (at your option) any later version. |

20 | * |

21 | * The Ascend Language Interpreter is distributed in hope that it will be |

22 | * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of |

23 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |

24 | * General Public License for more details. |

25 | * |

26 | * You should have received a copy of the GNU General Public License |

27 | * along with the program; if not, write to the Free Software Foundation, |

28 | * Inc., 675 Mass Ave, Cambridge, MA 02139 USA. Check the file named |

29 | * COPYING. |

30 | */ |

31 | |

32 | /** @file |

33 | * Byte length calculation routines for atoms/relations. |

34 | * Routines provided to fill the byte length field of the type description. |

35 | * <pre> |

36 | * When #including atomsize.h, make sure these files are #included first: |

37 | * #include "utilities/ascConfig.h" |

38 | * #include "instance_enum.h" |

39 | * #include "childinfo.h" |

40 | * </pre> |

41 | */ |

42 | |

43 | #ifndef __ATOMSIZE_H_SEEN__ |

44 | #define __ATOMSIZE_H_SEEN__ |

45 | |

46 | extern unsigned long ConstantByteLength(enum inst_t it); |

47 | /**< |

48 | * <!-- unsigned long ConstantByteLength(it) --> |

49 | * <!-- enum inst_t it; --> |

50 | * Returns the number of bytes needed for the Constant instance of type it. |

51 | */ |

52 | |

53 | extern unsigned long RealAtomByteLength(unsigned long num_children, |

54 | CONST struct ChildDesc *c); |

55 | /**< |

56 | * <!-- unsigned long RealAtomByteLength(num_children,c) --> |

57 | * <!-- unsigned long num_children; --> |

58 | * <!-- const struct ChildDesc *c; --> |

59 | * Given the number of children and descriptions of the children, this |

60 | * routine will calculate the number of bytes needed for the instance. |

61 | */ |

62 | |

63 | extern unsigned long IntegerAtomByteLength(unsigned long num_children, |

64 | CONST struct ChildDesc *c); |

65 | /**< |

66 | * <!-- unsigned long IntegerAtomByteLength(num_children,c) --> |

67 | * <!-- unsigned long num_children; --> |

68 | * <!-- const struct ChildDesc *c; --> |

69 | * Given the number of children and descriptions of the children, this |

70 | * routine will calculate the number of bytes needed for the instance. |

71 | */ |

72 | |

73 | extern unsigned long BooleanAtomByteLength(unsigned long num_children, |

74 | CONST struct ChildDesc *c); |

75 | /**< |

76 | * <!-- unsigned long BooleanAtomByteLength(num_children,c) --> |

77 | * <!-- unsigned long num_children; --> |

78 | * <!-- const struct ChildDesc *c; --> |

79 | * Given the number of children and descriptions of the children, this |

80 | * routine will calculate the number of bytes needed for the instance. |

81 | */ |

82 | |

83 | extern unsigned long SetAtomByteLength(unsigned long num_children, |

84 | CONST struct ChildDesc *c); |

85 | /**< |

86 | * <!-- unsigned long SetAtomByteLength(num_children,c) --> |

87 | * <!-- unsigned long num_children; --> |

88 | * <!-- const struct ChildDesc *c; --> |

89 | * Given the number of children and descriptions of the children, this |

90 | * routine will calculate the number of bytes needed for the instance. |

91 | */ |

92 | |

93 | extern unsigned long SymbolAtomByteLength(unsigned long num_children, |

94 | CONST struct ChildDesc *c); |

95 | /**< |

96 | * <!-- unsigned long SymbolAtomByteLength(num_children,c) --> |

97 | * <!-- unsigned long num_children; --> |

98 | * <!-- const struct ChildDesc *c; --> |

99 | * Given the number of children and descriptions of the children, this |

100 | * routine will calculate the number of bytes needed for the instance. |

101 | */ |

102 | |

103 | extern unsigned long RelationAtomByteLength(unsigned long num_children, |

104 | CONST struct ChildDesc *c); |

105 | /**< |

106 | * <!-- unsigned long RelationAtomByteLength(num_children,c) --> |

107 | * <!-- unsigned long num_children; --> |

108 | * <!-- const struct ChildDesc *c; --> |

109 | * Given the number of children and descriptions of the children, this |

110 | * routine will calculate the number of bytes needed for the instance. |

111 | */ |

112 | |

113 | extern unsigned long LogRelAtomByteLength(unsigned long num_children, |

114 | CONST struct ChildDesc *c); |

115 | /**< |

116 | * <!-- unsigned long LogRelAtomByteLength(num_children,c) --> |

117 | * <!-- unsigned long num_children; --> |

118 | * <!-- const struct ChildDesc *c; --> |

119 | * Given the number of children and descriptions of the children, this |

120 | * routine will calculate the number of bytes needed for the instance. |

121 | */ |

122 | |

123 | #endif /* __ATOMSIZE_H_SEEN__ */ |

124 |

john.pye@anu.edu.au | ViewVC Help |

Powered by ViewVC 1.1.22 |