Merged in f5soh/librepilot/update_credits (pull request #529)
[librepilot.git] / ground / gcs / src / plugins / uavobjects / uavobject.py.template
bloba6d0ce393fbc6ad18701cd0add40b10ba4a92fe6
1 ##
2 ##############################################################################
4 # @file       $(NAMELC).py
5 # @author     The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
6 # @brief      Implementation of the $(NAME) object. This file has been 
7 #             automatically generated by the UAVObjectGenerator.
8
9 # @note       Object definition file: $(XMLFILE). 
10 #             This is an automatically generated file.
11 #             DO NOT modify manually.
13 # @see        The GNU Public License (GPL) Version 3
15 #############################################################################/
17 # This program is free software; you can redistribute it and/or modify
18 # it under the terms of the GNU General Public License as published by
19 # the Free Software Foundation; either version 3 of the License, or
20 # (at your option) any later version.
22 # This program is distributed in the hope that it will be useful, but
23 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
24 # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
25 # for more details.
27 # You should have received a copy of the GNU General Public License along
28 # with this program; if not, write to the Free Software Foundation, Inc.,
29 # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
33 import uavobject
35 import struct
36 from collections import namedtuple
38 # This is a list of instances of the data fields contained in this object
39 _fields = $(DATAFIELDS)
41 class $(NAME)(uavobject.UAVObject):
42     ## Object constants
43     OBJID        = $(OBJID)
44     NAME         = "$(NAME)"
45     METANAME     = "$(NAME)Meta"
46     ISSINGLEINST = $(ISSINGLEINST)
47     ISSETTINGS   = $(ISSETTINGS)
49     def __init__(self):
50         uavobject.UAVObject.__init__(self,
51                                      self.OBJID, 
52                                      self.NAME,
53                                      self.METANAME,
54                                      0,
55                                      self.ISSINGLEINST)
57         for f in _fields:
58             self.add_field(f)
59         
60     def __str__(self):
61         s  = ("0x%08X (%10u)  %-30s  %3u bytes  format '%s'\n"
62                  % (self.OBJID, self.OBJID, self.NAME, self.get_struct().size, self.get_struct().format))
63         for f in self.get_tuple()._fields:
64             s += ("\t%s\n" % f)
65         return (s)
67 def main():
68     # Instantiate the object and dump out some interesting info
69     x = $(NAME)()
70     print (x)
72 if __name__ == "__main__":
73     #import pdb ; pdb.run('main()')
74     main()