ASCcontribution Class Reference

Class for decoding a ASC (ACD Scalar Contribtion) LDF datagram. More...

#include <ASCcontribution.h>

Inheritance diagram for ASCcontribution:

Inheritance graph
[legend]
Collaboration diagram for ASCcontribution:

Collaboration graph
[legend]
List of all members.

Public Types

 Summary_Words = 16
 CNO_Words = 24
 Tile_Words = 4096
enum  { Summary_Words = 16, CNO_Words = 24, Tile_Words = 4096 }

Public Member Functions

unsigned char * string (bool swap=!DFC_BIG_ENDIAN)
 Return this ASCcontribution in string form.
unsigned * summaryPtr () const
unsigned * cnoPtr () const
unsigned * tilesPtr () const

Static Public Member Functions

static ASCcontributioncreate (unsigned char *buffer, unsigned size, bool swap=!DFC_BIG_ENDIAN)
 Create an ASCcontribtuion from a Python string.

Detailed Description

Class for decoding a ASC (ACD Scalar Contribtion) LDF datagram.

Author:
Eric Charles -- GLAST LAT I&T/SVAC - (echarles@slac.stanford.edu)
Revision
1.1
Date:
September 21, 2005 -- Created
Id
ASCcontribution.h,v 1.1 2005/09/28 22:04:13 echarles Exp

Copyright: Copyright 2005 by The Board of Trustees of the Leland Stanford Junior University. All rights reserved.


Member Function Documentation

unsigned* ASCcontribution::cnoPtr (  )  const [inline]

Returns:
- pointer to the start of the cno summary data

ASCcontribution * ASCcontribution::create ( unsigned char *  buffer,
unsigned  size,
bool  swap = !DFC_BIG_ENDIAN 
) [inline, static]

Create an ASCcontribtuion from a Python string.

This comment is copied from EBFevent header file

This method is here to support the Python interface. A Python string is cast to an ASCcontribution. If this class had anything but a no-op constructor this would not work and we would have to use placement new. The reason this wasn't done right off the bat is that it isn't entirely clear that we know how to do this correctly vis a vis the Python object reference counting. Sometimes a Python crash is observed that complains about an object already being marked for garbage collection. I have not been able to narrow this down to a particular class, but think it might have to do with the placement new used in the LATdatagram class.

Parameters:
buffer - A buffer containing an ASCcontribution in string form
size - The size of the buffer
swap - Optional parameter to force or not force in place byte swapping
Returns:
- A pointer to the buffer cast as an ASCcontribution

unsigned char * ASCcontribution::string ( bool  swap = !DFC_BIG_ENDIAN  )  [inline]

Return this ASCcontribution in string form.

This comment is copied from EBFevent header file

This method is here to support the Python interface.

Parameters:
swap - Boolean to cause the buffer to be byte swapped in place
Returns:
A pointer to this ASCcontribution cast as an array of unsigned chars

Reimplemented from LATcontribution.

unsigned* ASCcontribution::summaryPtr (  )  const [inline]

Returns:
- pointer to the start of the error summary data

unsigned* ASCcontribution::tilesPtr (  )  const [inline]

Returns:
- pointer to the start of the tiles summary data


The documentation for this class was generated from the following file:
Generated on Mon Jul 31 17:48:12 2006 for LDF v06-02-00 by doxygen 1.4.7