The Campaign Manager Class and the Ground Tasking Manager Class:

Superclasses:

VuEntity

 

FalconEntity

Other Subclasses: CampBaseClass , SimBaseClass,TeamClass
 

CampManagerClass

Subclasses: GroundTaskingManagerClass, AirTaskingManagerClass, NavalTaskingManagerClass
 
 

                short                   managerFlags;                           // Various user flags
               Team                  owner;                                      // Controlling country/team

        public:
                // Constructors
                CampManagerClass (ushort type, Team t);
                CampManagerClass (VU_BYTE **stream);
                CampManagerClass (FILE *file);
                ~CampManagerClass (void);
                virtual int SaveSize (void);
                virtual int Save (VU_BYTE **stream);
                virtual int Save (FILE *file);

                // event handlers
                virtual int Handle(VuEvent *event);
                virtual int Handle(VuFullUpdateEvent *event);
                virtual int Handle(VuPositionUpdateEvent *event);
                virtual int Handle(VuEntityCollisionEvent *event);
                virtual int Handle(VuTransferEvent *event);
                virtual int Handle(VuSessionEvent *event);
                virtual VU_ERRCODE InsertionCallback(void);
                virtual VU_ERRCODE RemovalCallback(void);
                virtual int Wake (void) {return 0;};
                virtual int Sleep (void) {return 0;};

                // Required pure virtuals
                virtual int Task()                                                      {       return 0; }
                virtual void DoCalculations()                           {}

                // Core functions
                int MyTasker (ushort)                           {       return IsLocal(); }
                int GetTaskTeam (void)                                          {       return owner; }
                void SendMessage (VU_ID id, short msg, short d1, short d2, short d3);
        };