self.count = 0
self.counter = c
+ self.marshal_count = element.get("marshal_count")
self.count_scale = int(element.get( "count_scale", "1" ))
elements = (count * self.count_scale)
def is_variable_length(self):
- return len(self.count_parameter_list) or self.counter
+ return len(self.count_parameter_list) or self.counter or self.marshal_count
def is_64_bit(self):
return c
- def size_string(self, use_parens = 1):
+ def size_string(self, use_parens = 1, marshal = 0):
base_size_str = ""
count = self.get_element_count()
base_size_str += "sizeof(%s)" % ( self.get_base_type_string() )
- if self.counter or self.count_parameter_list:
+ if self.counter or self.count_parameter_list or (self.marshal_count and marshal):
list = [ "compsize" ]
- if self.counter and self.count_parameter_list:
+ if self.marshal_count and marshal:
+ list = [ self.marshal_count ]
+ elif self.counter and self.count_parameter_list:
list.append( self.counter )
elif self.counter:
list = [ self.counter ]