Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

CODEX_VSS::LabeledShare< _ShareType, _OneWay > Class Template Reference

Serializable compilation of a share and the label for its sharing. More...

#include <ShareLabel.h>

Inheritance diagram for CODEX_VSS::LabeledShare< _ShareType, _OneWay >:

Inheritance graph
[legend]
Collaboration diagram for CODEX_VSS::LabeledShare< _ShareType, _OneWay >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef _ShareType ShareType
 Export the share type.

typedef _OneWay OneWay
 Export the one-way function type.

typedef ShareLabel< _ShareType,
_OneWay > 
LabelType
 Export the label type.

typedef CODEX_ASN1::Base BaseType
 Convenient short name.


Public Methods

 LabeledShare ()
 Default constructor, for creating an object to be unmarshalled.

 LabeledShare (const ShareType &share, const LabelType &label)
 Constructor taking a share and a label.

 LabeledShare (const LabeledShare< ShareType, OneWay > &aOther)
 Copy constructor.

 ~LabeledShare ()
 Virtual destructor.

void operator= (const LabeledShare< ShareType, OneWay > &aOther)
 Assignment operator.

const ShareTypeshare () const
 
Returns:
The share.


const LabelTypelabel () const
 
Returns:
The label for the sharing.


int marshal (unsigned char **pp) const
 This function creates a serialized representation of the object, which is returned through the argument pp.

void * unmarshal (void *bogus, unsigned char **pp, long length)
 This function takes a serialized representation of the object and recreates the object representation.

void toFile (const char *fname) const
 Store the shares in a file.

void * fromFile (const char *fname)
 Read shares from a file.


Detailed Description

template<class _ShareType, class _OneWay>
class CODEX_VSS::LabeledShare< _ShareType, _OneWay >

Serializable compilation of a share and the label for its sharing.

Definition at line 358 of file ShareLabel.h.


Member Function Documentation

template<class _ShareType, class _OneWay>
int CODEX_VSS::LabeledShare< _ShareType, _OneWay >::marshal unsigned char **    pp const [inline, virtual]
 

This function creates a serialized representation of the object, which is returned through the argument pp.

This must be overridden by the concrete derived class.

Parameters:
pp  Serialized form of the object
Returns:
Length of the marshalled data

Implements CODEX_ASN1::Base.

Definition at line 407 of file ShareLabel.h.

Referenced by CODEX_VSS::LabeledShare< ShareType, OneWay >::toFile().

template<class _ShareType, class _OneWay>
void* CODEX_VSS::LabeledShare< _ShareType, _OneWay >::unmarshal void *    bogus,
unsigned char **    pp,
long    length
[inline, virtual]
 

This function takes a serialized representation of the object and recreates the object representation.

This must be overridden by the concrete derived class.

Parameters:
bogus  Included for compatibility with OpenSSL ASN.1 macros
pp  Serialized form of the data
length  Number of bytes of pp to unmarshal
Returns:
success or failure of the unmarshalling

Implements CODEX_ASN1::Base.

Definition at line 423 of file ShareLabel.h.

Referenced by CODEX_VSS::LabeledShare< ShareType, OneWay >::fromFile().


The documentation for this class was generated from the following file:
Generated on Wed Jun 2 16:33:24 2004 for COrnell Data EXchange (CODEX) by doxygen1.2.18