aboutsummaryrefslogtreecommitdiffstats
path: root/include/pipe.h
diff options
context:
space:
mode:
authorlloyd <[email protected]>2008-04-12 16:17:44 +0000
committerlloyd <[email protected]>2008-04-12 16:17:44 +0000
commitdabde92a24671700ac2150c938587c3efd505499 (patch)
tree3e5dc688be68d6c84fad7a6c99fdbd98d93b60c1 /include/pipe.h
parent9cbdc7ee564c802781b82ba907b7dfb187fa52e8 (diff)
Modify areas that still assumed Pipe::message_id was exactly a u32bit.
This was done by replacing Pipe::message_id with a completely opaque type and adding only the necessary operations. In this revision Pipe::message_id does remain a u32bit. However it may become an opaque type in the future. Move the Invalid_Message_Number exception to Pipe since that is the only piece of code which throws it.
Diffstat (limited to 'include/pipe.h')
-rw-r--r--include/pipe.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/pipe.h b/include/pipe.h
index 20fdc6a41..89f1ac4db 100644
--- a/include/pipe.h
+++ b/include/pipe.h
@@ -20,6 +20,12 @@ class Pipe : public DataSource
public:
typedef u32bit message_id;
+ class Invalid_Message_Number : public Invalid_Argument
+ {
+ public:
+ Invalid_Message_Number(const std::string&, message_id);
+ };
+
static const message_id LAST_MESSAGE, DEFAULT_MESSAGE;
void write(const byte[], u32bit);
@@ -48,7 +54,7 @@ class Pipe : public DataSource
message_id default_msg() const { return default_read; }
void set_default_msg(message_id);
- u32bit message_count() const;
+ message_id message_count() const;
bool end_of_data() const;
void start_msg();